From 323a76f085f05f0ae9561dbd413af715dbff8929 Mon Sep 17 00:00:00 2001 From: Sawyer Blatz Date: Wed, 9 Oct 2019 10:39:34 -0700 Subject: [PATCH] For #1298: Fixes issue with Adjust campaign not sending through Glean --- app/proguard-rules.pro | 14 ++++++++++++++ app/src/main/AndroidManifest.xml | 1 + .../java/org/mozilla/fenix/components/Analytics.kt | 3 +-- .../components/metrics/AdjustMetricsService.kt | 9 ++------- buildSrc/src/main/java/Dependencies.kt | 2 +- 5 files changed, 19 insertions(+), 10 deletions(-) diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index db7b09edfe8b..8c3615be9249 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -94,3 +94,17 @@ # Keep motionlayout internal methods # https://github.com/mozilla-mobile/fenix/issues/2094 -keep class androidx.constraintlayout.** { *; } + +# Keep adjust relevant classes +-keep class com.adjust.sdk.** { *; } +-keep class com.google.android.gms.common.ConnectionResult { + int SUCCESS; +} +-keep class com.google.android.gms.ads.identifier.AdvertisingIdClient { + com.google.android.gms.ads.identifier.AdvertisingIdClient$Info getAdvertisingIdInfo(android.content.Context); +} +-keep class com.google.android.gms.ads.identifier.AdvertisingIdClient$Info { + java.lang.String getId(); + boolean isLimitAdTrackingEnabled(); +} +-keep public class com.android.installreferrer.** { *; } \ No newline at end of file diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index b3771542f05c..e5cf311dc255 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -4,6 +4,7 @@ package="org.mozilla.fenix"> + 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 a10c20831ac9..6f49c31deaa8 100644 --- a/app/src/main/java/org/mozilla/fenix/components/Analytics.kt +++ b/app/src/main/java/org/mozilla/fenix/components/Analytics.kt @@ -20,7 +20,6 @@ import org.mozilla.fenix.components.metrics.AdjustMetricsService import org.mozilla.fenix.components.metrics.GleanMetricsService import org.mozilla.fenix.components.metrics.LeanplumMetricsService import org.mozilla.fenix.components.metrics.MetricController -import org.mozilla.fenix.ext.settings import org.mozilla.fenix.test.Mockable import org.mozilla.geckoview.BuildConfig.MOZ_APP_BUILDID import org.mozilla.geckoview.BuildConfig.MOZ_APP_VERSION @@ -84,7 +83,7 @@ class Analytics( LeanplumMetricsService(context as Application), AdjustMetricsService(context) ), - isTelemetryEnabled = { context.settings().isTelemetryEnabled } + isTelemetryEnabled = { true } ) } } diff --git a/app/src/main/java/org/mozilla/fenix/components/metrics/AdjustMetricsService.kt b/app/src/main/java/org/mozilla/fenix/components/metrics/AdjustMetricsService.kt index 4e1946493b19..8237430f0e6f 100644 --- a/app/src/main/java/org/mozilla/fenix/components/metrics/AdjustMetricsService.kt +++ b/app/src/main/java/org/mozilla/fenix/components/metrics/AdjustMetricsService.kt @@ -10,7 +10,6 @@ import android.os.Bundle import android.util.Log import com.adjust.sdk.Adjust import com.adjust.sdk.AdjustConfig -import com.adjust.sdk.LogLevel import org.mozilla.fenix.BuildConfig import org.mozilla.fenix.Config import org.mozilla.fenix.ext.settings @@ -35,15 +34,11 @@ class AdjustMetricsService(private val application: Application) : MetricsServic ) config.setOnAttributionChangedListener { - it.campaign?.let { campaign -> - application.settings().adjustCampaignId = campaign - } + application.applicationContext.settings().adjustCampaignId = it.campaign } - config.setLogLevel(LogLevel.SUPRESS) - Adjust.onCreate(config) - Adjust.setEnabled(true) + application.registerActivityLifecycleCallbacks(AdjustLifecycleCallbacks()) } diff --git a/buildSrc/src/main/java/Dependencies.kt b/buildSrc/src/main/java/Dependencies.kt index cf2d5fc3d96a..dd590a8cf46e 100644 --- a/buildSrc/src/main/java/Dependencies.kt +++ b/buildSrc/src/main/java/Dependencies.kt @@ -45,7 +45,7 @@ object Versions { const val mozilla_appservices = "0.40.0" const val autodispose = "1.1.0" - const val adjust = "4.11.4" + const val adjust = "4.18.3" const val installreferrer = "1.0" const val junit = "4.12"