Bug 1232773 - Call Adjust.onPause/onResume. r=mfinkle draft
authorMichael Comella <michael.l.comella@gmail.com>
Tue, 22 Dec 2015 14:29:51 -0800
changeset 317165 1b7dc91a174838239f7fdbc16a268262cd061848
parent 317164 b80edbdca7e1a2ea09f7db53b11385f1331fd7d2
child 512260 89353a337d270b7b05a592455c082dfa408de787
push id8657
push usermichael.l.comella@gmail.com
push dateTue, 22 Dec 2015 22:31:59 +0000
reviewersmfinkle
bugs1232773
milestone46.0a1
Bug 1232773 - Call Adjust.onPause/onResume. r=mfinkle
mobile/android/base/java/org/mozilla/gecko/BrowserApp.java
mobile/android/base/java/org/mozilla/gecko/adjust/AdjustHelper.java
mobile/android/base/java/org/mozilla/gecko/adjust/AdjustHelperInterface.java
mobile/android/base/java/org/mozilla/gecko/adjust/StubAdjustHelper.java
--- a/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java
+++ b/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java
@@ -901,16 +901,19 @@ public class BrowserApp extends GeckoApp
             });
         }
     }
 
     @Override
     public void onResume() {
         super.onResume();
 
+        // Needed for Adjust to get accurate session measurements
+        AdjustConstants.getAdjustHelper().onResume();
+
         final String args = ContextUtils.getStringExtra(getIntent(), "args");
         // If an external intent tries to start Fennec in guest mode, and it's not already
         // in guest mode, this will change modes before opening the url.
         // NOTE: OnResume is called twice sometimes when showing on the lock screen.
         final boolean enableGuestSession = GuestSession.shouldUse(this, args);
         final boolean inGuestSession = GeckoProfile.get(this).inGuestMode();
         if (enableGuestSession != inGuestSession) {
             doRestart(getIntent());
@@ -923,16 +926,20 @@ public class BrowserApp extends GeckoApp
         processTabQueue();
 
         mScreenshotObserver.start();
     }
 
     @Override
     public void onPause() {
         super.onPause();
+
+        // Needed for Adjust to get accurate session measurements
+        AdjustConstants.getAdjustHelper().onPause();
+
         // Register for Prompt:ShowTop so we can foreground this activity even if it's hidden.
         EventDispatcher.getInstance().registerGeckoThreadListener((GeckoEventListener) this,
             "Prompt:ShowTop");
 
         mScreenshotObserver.stop();
     }
 
     @Override
--- a/mobile/android/base/java/org/mozilla/gecko/adjust/AdjustHelper.java
+++ b/mobile/android/base/java/org/mozilla/gecko/adjust/AdjustHelper.java
@@ -27,16 +27,24 @@ public class AdjustHelper implements Adj
             appToken = "ABCDEFGHIJKL";
             logLevel = LogLevel.VERBOSE;
         }
         AdjustConfig config = new AdjustConfig(context, appToken, environment);
         config.setLogLevel(logLevel);
         Adjust.onCreate(config);
     }
 
+    public void onPause() {
+        Adjust.onPause();
+    }
+
+    public void onResume() {
+        Adjust.onResume();
+    }
+
     public void setEnabled(final boolean isEnabled) {
         Adjust.setEnabled(isEnabled);
     }
 
     public void onReceive(final Context context, final Intent intent) {
         new AdjustReferrerReceiver().onReceive(context, intent);
     }
 }
--- a/mobile/android/base/java/org/mozilla/gecko/adjust/AdjustHelperInterface.java
+++ b/mobile/android/base/java/org/mozilla/gecko/adjust/AdjustHelperInterface.java
@@ -9,11 +9,14 @@ import android.content.Context;
 import android.content.Intent;
 
 public interface AdjustHelperInterface {
     /**
      * Register the Application with the Adjust SDK.
      * @param appToken the (secret!) Adjust SDK per-application token to register with; may be null.
      */
     void onCreate(final Context context, final String appToken);
+    void onPause();
+    void onResume();
+
     void setEnabled(final boolean isEnabled);
     void onReceive(final Context context, final Intent intent);
 }
--- a/mobile/android/base/java/org/mozilla/gecko/adjust/StubAdjustHelper.java
+++ b/mobile/android/base/java/org/mozilla/gecko/adjust/StubAdjustHelper.java
@@ -8,16 +8,24 @@ package org.mozilla.gecko.adjust;
 import android.content.Context;
 import android.content.Intent;
 
 public class StubAdjustHelper implements AdjustHelperInterface {
     public void onCreate(final Context context, final String appToken) {
         // Do nothing.
     }
 
+    public void onPause() {
+        // Do nothing.
+    }
+
+    public void onResume() {
+        // Do nothing.
+    }
+
     public void setEnabled(final boolean isEnabled) {
         // Do nothing.
     }
 
     public void onReceive(final Context context, final Intent intent) {
         // Do nothing.
     }
 }