From 5219a6f5245f9d600f702bafe1a028fb48b66faf Mon Sep 17 00:00:00 2001 From: Hector Dearman Date: Tue, 4 Mar 2025 11:41:26 +0000 Subject: [PATCH] [android] Init Reaper manually (#384) --- android/app/build.gradle.kts | 1 + android/app/src/main/AndroidManifest.xml | 11 +++++++++++ .../emergetools/hackernews/HackerNewsApplication.kt | 5 +++++ android/gradle/libs.versions.toml | 2 ++ 4 files changed, 19 insertions(+) diff --git a/android/app/build.gradle.kts b/android/app/build.gradle.kts index c228ea31..f210d22e 100644 --- a/android/app/build.gradle.kts +++ b/android/app/build.gradle.kts @@ -146,6 +146,7 @@ dependencies { implementation(libs.androidx.shapes) implementation(libs.androidx.browser) implementation(libs.androidx.datastore) + implementation(libs.androidx.startup) implementation(libs.extendedspans) diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 5c7f58b4..f477a0ac 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -16,6 +16,17 @@ android:theme="@style/Theme.HackerNews" tools:targetApi="31"> + + + + + diff --git a/android/app/src/main/java/com/emergetools/hackernews/HackerNewsApplication.kt b/android/app/src/main/java/com/emergetools/hackernews/HackerNewsApplication.kt index b07e5cdc..b70147d0 100644 --- a/android/app/src/main/java/com/emergetools/hackernews/HackerNewsApplication.kt +++ b/android/app/src/main/java/com/emergetools/hackernews/HackerNewsApplication.kt @@ -13,6 +13,7 @@ import com.emergetools.hackernews.data.local.UserStorage import com.emergetools.hackernews.data.remote.HackerNewsBaseClient import com.emergetools.hackernews.data.remote.HackerNewsSearchClient import com.emergetools.hackernews.data.remote.HackerNewsWebClient +import com.emergetools.reaper.Reaper import kotlinx.serialization.json.Json import okhttp3.OkHttpClient import java.time.Duration @@ -31,6 +32,10 @@ class HackerNewsApplication : Application() { override fun onCreate() { super.onCreate() + // This demonstrates manual initialization of Reaper. + // See https://docs.emergetools.com/docs/reaper-setup-android#manual-initialization + Reaper.init(applicationContext) + val db = Room.databaseBuilder( applicationContext, HackerNewsDatabase::class.java, diff --git a/android/gradle/libs.versions.toml b/android/gradle/libs.versions.toml index b49166c7..db57cac6 100644 --- a/android/gradle/libs.versions.toml +++ b/android/gradle/libs.versions.toml @@ -24,6 +24,7 @@ sentry = "5.3.0" shapes = "1.0.1" datastore = "1.1.3" room = "2.6.1" +startup = "1.2.0" jsoup = "1.19.1" extendedspans = "1.4.0" composeBom = "2025.02.00" @@ -38,6 +39,7 @@ androidx-navigation = { group = "androidx.navigation", name = "navigation-compos androidx-browser = { group = "androidx.browser", name = "browser", version.ref = "browser" } androidx-shapes = { group = "androidx.graphics", name = "graphics-shapes", version.ref = "shapes" } androidx-datastore = { group = "androidx.datastore", name = "datastore-preferences", version.ref = "datastore" } +androidx-startup = { group = "androidx.startup", name = "startup-runtime", version.ref = "startup" } androidx-room = { group = "androidx.room", name = "room-runtime", version.ref = "room" } androidx-room-compiler = { group = "androidx.room", name = "room-compiler", version.ref = "room" } androidx-room-ktx = { group = "androidx.room", name = "room-ktx", version.ref = "room" }