Commit 334f572f authored by Petru Lingurar's avatar Petru Lingurar
Browse files

Bug 1603270 - Add telemetry for FirefoxPromoBannerRow user actions. r=VladBaicu, a=RyanVM

parent 400e38b7
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -5,6 +5,7 @@

package org.mozilla.gecko;

import org.mozilla.gecko.activitystream.homepanel.stream.FirefoxPromoBannerRow;
import org.mozilla.gecko.annotation.RobocopTarget;
import org.mozilla.gecko.annotation.WrapForJNI;
import org.mozilla.gecko.TelemetryContract.Event;
@@ -15,8 +16,10 @@ import org.mozilla.gecko.mma.MmaDelegate;

import android.util.Log;

import static org.mozilla.gecko.mma.MmaDelegate.DISMISSED_FIREFOX_PROMO_BANNER;
import static org.mozilla.gecko.mma.MmaDelegate.INTERACT_WITH_SEARCH_URL_AREA;
import static org.mozilla.gecko.mma.MmaDelegate.OPENED_BOOKMARK;
import static org.mozilla.gecko.mma.MmaDelegate.OPENED_FIREFOX_PROMO_BANNER;
import static org.mozilla.gecko.mma.MmaDelegate.SAVED_BOOKMARK;
import static org.mozilla.gecko.mma.MmaDelegate.SAVED_LOGIN_AND_PASSWORD;
import static org.mozilla.gecko.mma.MmaDelegate.SCREENSHOT;
@@ -108,6 +111,12 @@ public class Telemetry {
            MmaDelegate.track(SAVED_LOGIN_AND_PASSWORD);
        } else if (eventName.equalsIgnoreCase(Event.ACTION.toString()) && method == Method.BUTTON && extras.equals("awesomescreen-signup-dismiss")) {
            MmaDelegate.track(SIGN_UP_DISMISS);
        } else if (eventName.equalsIgnoreCase(Event.ACTION.toString()) && method == Method.BUTTON &&
                extras.equals(FirefoxPromoBannerRow.FIREFOX_PROMO_OPEN_EVENT)) {
            MmaDelegate.track(OPENED_FIREFOX_PROMO_BANNER);
        } else if (eventName.equalsIgnoreCase(Event.ACTION.toString()) && method == Method.BUTTON &&
                extras.equals(FirefoxPromoBannerRow.FIREFOX_PROMO_DISMISS_EVENT)) {
            MmaDelegate.track(DISMISSED_FIREFOX_PROMO_BANNER);
        }
    }
}
+9 −1
Original line number Diff line number Diff line
@@ -13,6 +13,8 @@ import android.view.View;

import org.mozilla.gecko.GeckoSharedPrefs;
import org.mozilla.gecko.R;
import org.mozilla.gecko.Telemetry;
import org.mozilla.gecko.TelemetryContract;
import org.mozilla.gecko.activitystream.homepanel.ActivityStreamPanel;
import org.mozilla.gecko.home.HomePager.OnUrlOpenListener;

@@ -20,6 +22,8 @@ import java.util.EnumSet;

public class FirefoxPromoBannerRow extends StreamViewHolder {
    public static final @LayoutRes int LAYOUT_ID = R.layout.activity_stream_promo_banner;
    public static final String FIREFOX_PROMO_OPEN_EVENT = "firefox_promo_open";
    public static final String FIREFOX_PROMO_DISMISS_EVENT = "firefox_promo_dismiss";

    private static final String WEBSITE_PROMO_URL = "https://blog.mozilla.org/firefox/firefox-android-new-features/";

@@ -27,11 +31,15 @@ public class FirefoxPromoBannerRow extends StreamViewHolder {
        super(itemView);

        itemView.findViewById(R.id.banner_action).setOnClickListener(__ -> {
            Telemetry.sendUIEvent(TelemetryContract.Event.ACTION, TelemetryContract.Method.BUTTON, FIREFOX_PROMO_OPEN_EVENT);
            onUrlOpenListener.onUrlOpen(WEBSITE_PROMO_URL, EnumSet.noneOf(OnUrlOpenListener.Flags.class));
            dismissBanner();
        });

        itemView.findViewById(R.id.banner_dismiss).setOnClickListener(__ -> dismissBanner());
        itemView.findViewById(R.id.banner_dismiss).setOnClickListener(__ -> {
            Telemetry.sendUIEvent(TelemetryContract.Event.ACTION, TelemetryContract.Method.BUTTON, FIREFOX_PROMO_DISMISS_EVENT);
            dismissBanner();
        });
    }

    @SuppressLint("ApplySharedPref")
+2 −0
Original line number Diff line number Diff line
@@ -55,6 +55,8 @@ public class MmaDelegate {
    public static final String ONBOARDING_DEFAULT_VALUES = "E_Onboarding_With_Default_Values";
    public static final String ONBOARDING_REMOTE_VALUES = "E_Onboarding_With_Remote_Values";
    public static final String SIGN_UP_DISMISS = "E_Signup_Dismiss";
    public static final String OPENED_FIREFOX_PROMO_BANNER = "E_Opened_Firefox_Promo";
    public static final String DISMISSED_FIREFOX_PROMO_BANNER = "E_Dismissed_Firefox_Promo";

    public static final String USER_SIGNED_IN_TO_FXA = "E_User_Signed_In_To_FxA";
    public static final String USER_SIGNED_UP_FOR_FXA = "E_User_Signed_Up_For_FxA";