Bug 1313391 - Move HLS video playback behind a switchboard flag. r?snorp
This will allow us to ship the feature to a subset of the users or pull the feature without
needing to release a new version of the app.
MozReview-Commit-ID: 3rGLT29wuyC
--- a/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java
+++ b/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java
@@ -2108,25 +2108,27 @@ public class BrowserApp extends GeckoApp
@Override
public void run() {
mDynamicToolbar.setVisible(true, VisibilityTransition.ANIMATE);
}
});
break;
case "Video:Play":
- final String uri = message.getString("uri");
- final String uuid = message.getString("uuid");
- ThreadUtils.postToUiThread(new Runnable() {
- @Override
- public void run() {
- mVideoPlayer.start(Uri.parse(uri));
- Telemetry.sendUIEvent(TelemetryContract.Event.SHOW, TelemetryContract.Method.CONTENT, "playhls");
- }
- });
+ if (SwitchBoard.isInExperiment(this, Experiments.HLS_VIDEO_PLAYBACK)) {
+ final String uri = message.getString("uri");
+ final String uuid = message.getString("uuid");
+ ThreadUtils.postToUiThread(new Runnable() {
+ @Override
+ public void run() {
+ mVideoPlayer.start(Uri.parse(uri));
+ Telemetry.sendUIEvent(TelemetryContract.Event.SHOW, TelemetryContract.Method.CONTENT, "playhls");
+ }
+ });
+ }
break;
case "Prompt:ShowTop":
// Bring this activity to front so the prompt is visible..
Intent bringToFrontIntent = new Intent();
bringToFrontIntent.setClassName(AppConstants.ANDROID_PACKAGE_NAME, AppConstants.MOZ_ANDROID_BROWSER_INTENT_CLASS);
bringToFrontIntent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
startActivity(bringToFrontIntent);
--- a/mobile/android/base/java/org/mozilla/gecko/Experiments.java
+++ b/mobile/android/base/java/org/mozilla/gecko/Experiments.java
@@ -48,16 +48,19 @@ public class Experiments {
public static final String TRIPLE_READERVIEW_BOOKMARK_PROMPT = "triple-readerview-bookmark-prompt";
// Only show origin in URL bar instead of full URL (Bug 1236431)
public static final String URLBAR_SHOW_ORIGIN_ONLY = "urlbar-show-origin-only";
// Show name of organization (EV cert) instead of full URL in URL bar (Bug 1249594).
public static final String URLBAR_SHOW_EV_CERT_OWNER = "urlbar-show-ev-cert-owner";
+ // Play HLS videos in a VideoView (Bug 1313391)
+ public static final String HLS_VIDEO_PLAYBACK = "hls-video-playback";
+
/**
* Returns if a user is in certain local experiment.
* @param experiment Name of experiment to look up
* @return returns value for experiment or false if experiment does not exist.
*/
public static boolean isInExperimentLocal(Context context, String experiment) {
if (SwitchBoard.isInBucket(context, 0, 20)) {
return Experiments.ONBOARDING3_A.equals(experiment);