diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b8b3e94da2067b40c8b7a994afcb27909399dd97..39612d9921f409cddea612db305cd6f98a193123 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,5 +1,8 @@ image: "registry.gitlab.e.foundation/e/os/docker-android-apps-cicd:latest" +variables: + SENTRY_DSN: "${SENTRY_DSN}" + stages: - check - build @@ -27,13 +30,13 @@ test: stage: build script: - ./gradlew test - needs: ["spotless", "lint"] + needs: [ "spotless", "lint" ] build: stage: build script: - ./gradlew assembleRelease - needs: ["spotless", "lint"] + needs: [ "spotless", "lint" ] artifacts: paths: - app/build/outputs/apk diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 12b6dddea8337a1af5fa2c6073de22e84c081d4a..49f6562971268fd1858d69780d93a6b398b124d2 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -12,7 +12,7 @@ plugins { // Manifest version information val versionMajor = 1 -val versionMinor = 7 +val versionMinor = 8 val versionPatch = 0 val localProps = Properties() @@ -65,6 +65,10 @@ android { matchingFallbacks += listOf("release") isDebuggable = false } + + configureEach { + buildConfigField("String", "SENTRY_DSN", "\"${System.getenv("SENTRY_DSN")}\"") + } } signingConfigs { @@ -110,7 +114,10 @@ android { kotlinOptions { jvmTarget = "1.8" } - buildFeatures { viewBinding = true } + buildFeatures { + viewBinding = true + buildConfig = true + } lint { abortOnError = false @@ -170,4 +177,5 @@ dependencies { // elib implementation(libs.elib) + implementation(libs.telemetry) } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 7b491ec950505a8f4d6d41f4a349c927b25d8f8d..ae712d85e20fd2612015edb7c5c73918399f94bc 100755 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -43,7 +43,7 @@ - + - - diff --git a/app/src/main/java/foundation/e/blisslauncher/BlissLauncher.java b/app/src/main/java/foundation/e/blisslauncher/BlissLauncher.java index 150574bc5e944b92b76325e28ca6fdd48824bb5a..b6440b930c7433726fe9ac3626e7a252c114b731 100755 --- a/app/src/main/java/foundation/e/blisslauncher/BlissLauncher.java +++ b/app/src/main/java/foundation/e/blisslauncher/BlissLauncher.java @@ -15,6 +15,7 @@ import foundation.e.blisslauncher.core.blur.BlurWallpaperProvider; import foundation.e.blisslauncher.core.customviews.WidgetHost; import foundation.e.blisslauncher.features.launcher.AppProvider; import foundation.e.blisslauncher.features.notification.NotificationService; +import foundation.e.lib.telemetry.Telemetry; public class BlissLauncher extends Application { public static final Uri NOTIFICATION_BADGING_URI = Settings.Secure.getUriFor("notification_badging"); @@ -45,6 +46,7 @@ public class BlissLauncher extends Application { }; getContentResolver().registerContentObserver(NOTIFICATION_BADGING_URI, false, notificationSettingsObserver); + Telemetry.INSTANCE.init(BuildConfig.SENTRY_DSN, this); } private void onNotificationSettingsChanged() { diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 4f55f503c9f5a376f1d7f9eda4ba1a67499359c0..6143679edb7f791e0f826cc8aca487affbe323d6 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -70,6 +70,7 @@ tools-leakcanary = "com.squareup.leakcanary:leakcanary-android:2.10" timber = "com.jakewharton.timber:timber:4.7.1" restriction-bypass = "com.github.ChickenHook:RestrictionBypass:2.2" elib = "foundation.e:elib:0.0.1-alpha11" +telemetry = "foundation.e.lib:telemetry:0.0.3-alpha" [plugins] android-application = { id = "com.android.application", version.ref = "agp" }