gecko-dev/mobile/android/tests
Petru Lingurar b9eed730ee Bug 1386192 - Test Leanplum Custom Message for Onboarding; r=cnevinchen+582291
Created LeanPlumVariables to allow LeanPlum overwriting the values used for
populating the OnBoarding screens. By simply adding the @Variable annotation
to it's fields, on the first run of the app, they will appear in "LeanPlum
dashboard - Variables" and will allow overwriting for future runs.

The OnBoarding process will now try to use LeanPlum values if possible.
Because connecting to LeanPlum and downloading the Variables might take
a few seconds we use a delay of up to 3 seconds until starting to show
the Onboarding screens.
The default values will still be used if:
- if the LP experiment is not available
- if no internet connection
- if more than 3 seconds have passed and LP didn't finish it's download

Added two new events that could be tracked to Leanplum
MmaDelegate.ONBOARDING_DEFAULT_VALUES and MmaDelegate.ONBOARDING_REMOTE_VALUES
to inform if showing the Onboarding with server values was possible or not.

Because of the 3 seconds delay until showing the Onboarding panels leaking the
could be possible. Used WeakReferences for both the Activity in
OnboardingHelper and the OnboardingHelper in MmaLeanplumImp to avoid it.

MozReview-Commit-ID: H30e9Ng7jrM

--HG--
extra : rebase_source : e403b8010005aa82f8b6440586c533ce99952f9f
2018-07-04 12:56:20 +03:00
..
browser Bug 1386192 - Test Leanplum Custom Message for Onboarding; r=cnevinchen+582291 2018-07-04 12:56:20 +03:00
moz.build Bug 1409087 - Part 4: Remove browser JUnit 3 tests and build apparatus for {browser,background}.apk. r=Grisha,ted.mielczarek 2017-11-02 16:03:00 -07:00