From bf9e78274161020804086bb06286918c48b635dc Mon Sep 17 00:00:00 2001 From: rxu Date: Thu, 30 Mar 2023 12:26:32 +0800 Subject: [PATCH] Bug 1832003 - Start with default false of telemetry when user disagrees with privacy notice --- .../home/mozonline/PrivacyContentDisplayHelper.kt | 13 ++++++++++--- .../main/java/org/mozilla/fenix/utils/Settings.kt | 2 +- .../main/res/values-zh-rCN/mozonline_strings.xml | 2 +- app/src/main/res/values/mozonline_strings.xml | 2 +- 4 files changed, 13 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/org/mozilla/fenix/home/mozonline/PrivacyContentDisplayHelper.kt b/app/src/main/java/org/mozilla/fenix/home/mozonline/PrivacyContentDisplayHelper.kt index 476078e01f..e22522e51a 100644 --- a/app/src/main/java/org/mozilla/fenix/home/mozonline/PrivacyContentDisplayHelper.kt +++ b/app/src/main/java/org/mozilla/fenix/home/mozonline/PrivacyContentDisplayHelper.kt @@ -19,7 +19,6 @@ import org.mozilla.fenix.components.metrics.MetricServiceType import org.mozilla.fenix.ext.application import org.mozilla.fenix.ext.components import org.mozilla.fenix.ext.settings -import kotlin.system.exitProcess fun showPrivacyPopWindow(context: Context, activity: Activity) { val content = context.getString(R.string.privacy_notice_content) @@ -68,8 +67,16 @@ fun showPrivacyPopWindow(context: Context, activity: Activity) { } .setNeutralButton( context.getString(R.string.privacy_notice_neutral_button_2), - { _, _ -> exitProcess(0) }, - ) + ) { _, _ -> + context.settings().shouldShowPrivacyPopWindow = false + context.settings().isMarketingTelemetryEnabled = false + context.settings().isTelemetryEnabled = false + context.components.analytics.metrics.start(MetricServiceType.Marketing) + // Now that the privacy notice is accepted, application initialization can continue. + context.application.initialize() + activity.startActivity(Intent(activity, HomeActivity::class.java)) + activity.finish() + } .setTitle(context.getString(R.string.privacy_notice_title)) .setMessage(messageSpannable) .setCancelable(false) diff --git a/app/src/main/java/org/mozilla/fenix/utils/Settings.kt b/app/src/main/java/org/mozilla/fenix/utils/Settings.kt index 611fbd0cb2..35730582a4 100644 --- a/app/src/main/java/org/mozilla/fenix/utils/Settings.kt +++ b/app/src/main/java/org/mozilla/fenix/utils/Settings.kt @@ -304,7 +304,7 @@ class Settings(private val appContext: Context) : PreferencesHolder { default = false, ) - val isTelemetryEnabled by booleanPreference( + var isTelemetryEnabled by booleanPreference( appContext.getPreferenceKey(R.string.pref_key_telemetry), default = true, ) diff --git a/app/src/main/res/values-zh-rCN/mozonline_strings.xml b/app/src/main/res/values-zh-rCN/mozonline_strings.xml index 89cea478ad..2b7639c536 100644 --- a/app/src/main/res/values-zh-rCN/mozonline_strings.xml +++ b/app/src/main/res/values-zh-rCN/mozonline_strings.xml @@ -19,7 +19,7 @@ 同意并继续 退出应用 - 不同意并退出 + 不同意 diff --git a/app/src/main/res/values/mozonline_strings.xml b/app/src/main/res/values/mozonline_strings.xml index fe3bfb1700..773aca2ddb 100644 --- a/app/src/main/res/values/mozonline_strings.xml +++ b/app/src/main/res/values/mozonline_strings.xml @@ -18,7 +18,7 @@ Agree and Continue - Disagree and Exit + Disagree