Skip to content

Commit

Permalink
feat: support app startup initialization
Browse files Browse the repository at this point in the history
  • Loading branch information
fractalwrench committed Jul 8, 2024
1 parent 02fc358 commit 43e6c06
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 1 deletion.
1 change: 1 addition & 0 deletions buildSrc/src/main/kotlin/embrace-defaults.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,7 @@ android {
}

dependencies {
implementation("androidx.startup:startup-runtime:1.1.1")
implementation("org.jetbrains.kotlin:kotlin-stdlib:${Versions.KOTLIN_EXPOSED}")
add("detektPlugins", "io.gitlab.arturbosch.detekt:detekt-formatting:${Versions.DETEKT}")
add("lintChecks", project.project(":embrace-lint"))
Expand Down
12 changes: 11 additions & 1 deletion embrace-android-sdk/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
Expand All @@ -8,5 +9,14 @@
<meta-data
android:name="hostAppId"
android:value="${applicationId}" />
<provider
android:name="androidx.startup.InitializationProvider"
android:authorities="${applicationId}.androidx-startup"
android:exported="false"
tools:node="merge">
<meta-data
android:name="io.embrace.android.embracesdk.internal.EmbraceCoreInitializer"
android:value="androidx.startup" />
</provider>
</application>
</manifest>
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
package io.embrace.android.embracesdk.internal

import android.content.Context
import androidx.startup.Initializer
import io.embrace.android.embracesdk.Embrace

internal class EmbraceCoreInitializer : Initializer<Embrace> {

Check warning on line 7 in embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/EmbraceCoreInitializer.kt

View check run for this annotation

Codecov / codecov/patch

embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/EmbraceCoreInitializer.kt#L7

Added line #L7 was not covered by tests

override fun create(context: Context): Embrace {
val embrace = Embrace.getInstance()
embrace.start(context)
return embrace

Check warning on line 12 in embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/EmbraceCoreInitializer.kt

View check run for this annotation

Codecov / codecov/patch

embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/EmbraceCoreInitializer.kt#L10-L12

Added lines #L10 - L12 were not covered by tests
}

override fun dependencies() = emptyList<Class<out Initializer<*>>>()

Check warning on line 15 in embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/EmbraceCoreInitializer.kt

View check run for this annotation

Codecov / codecov/patch

embrace-android-sdk/src/main/java/io/embrace/android/embracesdk/internal/EmbraceCoreInitializer.kt#L15

Added line #L15 was not covered by tests
}

0 comments on commit 43e6c06

Please sign in to comment.