From 160af0e485eb88eda0a8ebff74578573193122fe Mon Sep 17 00:00:00 2001 From: Roger Yang Date: Thu, 12 Jan 2023 18:22:26 -0500 Subject: [PATCH] [fenix] Closes https://github.com/mozilla-mobile/fenix/pull/28484: Add nimbus exposure for pre permission prompt --- app/src/main/java/org/mozilla/fenix/HomeActivity.kt | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/org/mozilla/fenix/HomeActivity.kt b/app/src/main/java/org/mozilla/fenix/HomeActivity.kt index d8c93ac9e..88ccfc91d 100644 --- a/app/src/main/java/org/mozilla/fenix/HomeActivity.kt +++ b/app/src/main/java/org/mozilla/fenix/HomeActivity.kt @@ -106,6 +106,7 @@ import org.mozilla.fenix.library.bookmarks.DesktopFolders import org.mozilla.fenix.library.history.HistoryFragmentDirections import org.mozilla.fenix.library.historymetadata.HistoryMetadataGroupFragmentDirections import org.mozilla.fenix.library.recentlyclosed.RecentlyClosedFragmentDirections +import org.mozilla.fenix.nimbus.FxNimbus import org.mozilla.fenix.onboarding.DefaultBrowserNotificationWorker import org.mozilla.fenix.onboarding.FenixOnboarding import org.mozilla.fenix.onboarding.ReEngagementNotificationWorker @@ -348,10 +349,15 @@ open class HomeActivity : LocaleAwareAppCompatActivity(), NavHostActivity { */ private fun showNotificationPermissionPromptIfRequired() { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU && - !NotificationManagerCompat.from(applicationContext).areNotificationsEnabledSafe() + !NotificationManagerCompat.from(applicationContext).areNotificationsEnabledSafe() && + settings().numberOfAppLaunches <= 1 ) { + // Recording the exposure event here to capture all users who met all criteria to receive + // the pre permission notification prompt + FxNimbus.features.prePermissionNotificationPrompt.recordExposure() + if (settings().notificationPrePermissionPromptEnabled) { - if (!settings().isNotificationPrePermissionShown && settings().numberOfAppLaunches <= 1) { + if (!settings().isNotificationPrePermissionShown) { navHost.navController.navigate(NavGraphDirections.actionGlobalHomeNotificationPermissionDialog()) } } else {