From 215c6bad395af6df345b4dabb2d18bd6574f86c4 Mon Sep 17 00:00:00 2001 From: Jeff Boek Date: Tue, 5 Sep 2023 13:02:12 -0700 Subject: [PATCH] Bug 1851676 - Makes `initIfNeeded` public inside `SentryService`. (cherry picked from commit 16a37cf474e00f46281adeb06f81e1e0f5f6cd4e) --- .../java/org/mozilla/fenix/components/Analytics.kt | 10 ++++++++++ .../java/org/mozilla/fenix/components/Components.kt | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/org/mozilla/fenix/components/Analytics.kt b/app/src/main/java/org/mozilla/fenix/components/Analytics.kt index 3cd954a5b..da0fe53ea 100644 --- a/app/src/main/java/org/mozilla/fenix/components/Analytics.kt +++ b/app/src/main/java/org/mozilla/fenix/components/Analytics.kt @@ -18,7 +18,9 @@ import mozilla.components.service.nimbus.NimbusApi import mozilla.components.service.nimbus.messaging.FxNimbusMessaging import mozilla.components.service.nimbus.messaging.NimbusMessagingStorage import mozilla.components.service.nimbus.messaging.OnDiskMessageMetadataStorage +import mozilla.components.support.ktx.android.content.isMainProcess import mozilla.components.support.utils.BrowsersCache +import mozilla.components.support.utils.RunWhenReadyQueue import org.mozilla.fenix.BuildConfig import org.mozilla.fenix.Config import org.mozilla.fenix.HomeActivity @@ -46,6 +48,7 @@ import org.mozilla.geckoview.BuildConfig.MOZ_UPDATE_CHANNEL */ class Analytics( private val context: Context, + private val runWhenReadyQueue: RunWhenReadyQueue, ) { val crashReporter: CrashReporter by lazyMonitored { val services = mutableListOf() @@ -75,6 +78,13 @@ class Analytics( sentryProjectUrl = getSentryProjectUrl(), ) + // We only want to initialize Sentry on startup on the main process. + if (context.isMainProcess()) { + runWhenReadyQueue.runIfReadyOrQueue { + sentryService.initIfNeeded() + } + } + services.add(sentryService) } diff --git a/app/src/main/java/org/mozilla/fenix/components/Components.kt b/app/src/main/java/org/mozilla/fenix/components/Components.kt index d077ca297..23db1ec60 100644 --- a/app/src/main/java/org/mozilla/fenix/components/Components.kt +++ b/app/src/main/java/org/mozilla/fenix/components/Components.kt @@ -158,7 +158,7 @@ class Components(private val context: Context) { AddonManager(core.store, core.engine, addonsProvider, addonUpdater) } - val analytics by lazyMonitored { Analytics(context) } + val analytics by lazyMonitored { Analytics(context, performance.visualCompletenessQueue.queue) } val publicSuffixList by lazyMonitored { PublicSuffixList(context) } val clipboardHandler by lazyMonitored { ClipboardHandler(context) } val performance by lazyMonitored { PerformanceComponent() }