Pier Angelo Vendrame pushed to branch tor-browser-96.3.0-11.0-1 at The Tor Project / Applications / fenix

Commits:

3 changed files:

Changes:

  • app/src/main/java/org/mozilla/fenix/FenixApplication.kt
    ... ... @@ -151,6 +151,10 @@ open class FenixApplication : LocaleAwareApplication(), Provider {
    151 151
         @OptIn(DelicateCoroutinesApi::class) // GlobalScope usage
    
    152 152
         protected open fun initializeGlean() {
    
    153 153
             val telemetryEnabled = settings().isTelemetryEnabled
    
    154
    +        if (!telemetryEnabled) {
    
    155
    +            logger.debug("Preventing Glean from initializing, since telemetry is disabled")
    
    156
    +            return
    
    157
    +        }
    
    154 158
     
    
    155 159
             logger.debug("Initializing Glean (uploadEnabled=$telemetryEnabled, isFennec=${Config.channel.isFennec})")
    
    156 160
     
    

  • app/src/main/java/org/mozilla/fenix/components/metrics/GleanMetricsService.kt
    ... ... @@ -8,6 +8,7 @@ import android.content.Context
    8 8
     import mozilla.components.service.glean.Glean
    
    9 9
     import mozilla.components.service.glean.private.NoExtraKeys
    
    10 10
     import mozilla.components.support.base.log.logger.Logger
    
    11
    +import org.mozilla.fenix.BuildConfig
    
    11 12
     import org.mozilla.fenix.GleanMetrics.Addons
    
    12 13
     import org.mozilla.fenix.GleanMetrics.AndroidAutofill
    
    13 14
     import org.mozilla.fenix.GleanMetrics.AndroidKeystoreExperiment
    
    ... ... @@ -85,6 +86,9 @@ private class EventWrapper<T : Enum<T>>(
    85 86
         }
    
    86 87
     
    
    87 88
         fun track(event: Event) {
    
    89
    +        if (BuildConfig.DATA_COLLECTION_DISABLED) {
    
    90
    +            return
    
    91
    +        }
    
    88 92
             val extras = if (keyMapper != null) {
    
    89 93
                 event.extras?.mapKeys { (key) ->
    
    90 94
                     keyMapper.invoke(key.toString().asCamelCase())
    
    ... ... @@ -938,6 +942,12 @@ class GleanMetricsService(
    938 942
         private val installationPing = FirstSessionPing(context)
    
    939 943
     
    
    940 944
         override fun start() {
    
    945
    +        if (BuildConfig.DATA_COLLECTION_DISABLED) {
    
    946
    +            Logger.debug("Data collection is disabled, not initializing Glean.")
    
    947
    +            initialized = true
    
    948
    +            return
    
    949
    +        }
    
    950
    +
    
    941 951
             logger.debug("Enabling Glean.")
    
    942 952
             // Initialization of Glean already happened in FenixApplication.
    
    943 953
             Glean.setUploadEnabled(true)
    
    ... ... @@ -965,10 +975,12 @@ class GleanMetricsService(
    965 975
         }
    
    966 976
     
    
    967 977
         override fun track(event: Event) {
    
    968
    -        event.wrapper?.track(event)
    
    978
    +        if (!BuildConfig.DATA_COLLECTION_DISABLED) {
    
    979
    +            event.wrapper?.track(event)
    
    980
    +        }
    
    969 981
         }
    
    970 982
     
    
    971 983
         override fun shouldTrack(event: Event): Boolean {
    
    972
    -        return event.wrapper != null
    
    984
    +        return !BuildConfig.DATA_COLLECTION_DISABLED && event.wrapper != null
    
    973 985
         }
    
    974 986
     }

  • app/src/main/java/org/mozilla/fenix/components/metrics/MetricController.kt
    ... ... @@ -152,7 +152,11 @@ internal class ReleaseMetricController(
    152 152
     
    
    153 153
         private fun isInitialized(type: MetricServiceType): Boolean = initialized.contains(type)
    
    154 154
     
    
    155
    -    private fun isTelemetryEnabled(@Suppress("UNUSED_PARAMETER") type: MetricServiceType): Boolean = false
    
    155
    +    private fun isTelemetryEnabled(type: MetricServiceType): Boolean =
    
    156
    +        !BuildConfig.DATA_COLLECTION_DISABLED && when (type) {
    
    157
    +            MetricServiceType.Data -> isDataTelemetryEnabled()
    
    158
    +            MetricServiceType.Marketing -> isMarketingDataTelemetryEnabled()
    
    159
    +        }
    
    156 160
     
    
    157 161
         @Suppress("LongMethod", "MaxLineLength")
    
    158 162
         private fun Fact.toEvent(): Event? = when {