From 6841d40bc769fe5a14e5df55900094a381ae41e1 Mon Sep 17 00:00:00 2001 From: krocard Date: Fri, 18 Oct 2019 09:43:15 +0100 Subject: [PATCH] Demo app: Do not allow tunneling on API < 21 Without this patch, enabling tunneling on an API < 21 device would result in an method not existing exception and the app would crash. PiperOrigin-RevId: 275428851 --- .../com/google/android/exoplayer2/demo/PlayerActivity.java | 2 +- .../google/android/exoplayer2/demo/SampleChooserActivity.java | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/demos/main/src/main/java/com/google/android/exoplayer2/demo/PlayerActivity.java b/demos/main/src/main/java/com/google/android/exoplayer2/demo/PlayerActivity.java index 95c1073f57..e32373f540 100644 --- a/demos/main/src/main/java/com/google/android/exoplayer2/demo/PlayerActivity.java +++ b/demos/main/src/main/java/com/google/android/exoplayer2/demo/PlayerActivity.java @@ -206,7 +206,7 @@ public class PlayerActivity extends AppCompatActivity DefaultTrackSelector.ParametersBuilder builder = new DefaultTrackSelector.ParametersBuilder(/* context= */ this); boolean tunneling = intent.getBooleanExtra(TUNNELING, false); - if (tunneling) { + if (Util.SDK_INT >= 21 && tunneling) { builder.setTunnelingAudioSessionId(C.generateAudioSessionIdV21(/* context= */ this)); } trackSelectorParameters = builder.build(); diff --git a/demos/main/src/main/java/com/google/android/exoplayer2/demo/SampleChooserActivity.java b/demos/main/src/main/java/com/google/android/exoplayer2/demo/SampleChooserActivity.java index 11ed258c42..22533fd410 100644 --- a/demos/main/src/main/java/com/google/android/exoplayer2/demo/SampleChooserActivity.java +++ b/demos/main/src/main/java/com/google/android/exoplayer2/demo/SampleChooserActivity.java @@ -127,6 +127,9 @@ public class SampleChooserActivity extends AppCompatActivity preferExtensionDecodersMenuItem.setVisible(useExtensionRenderers); randomAbrMenuItem = menu.findItem(R.id.random_abr); tunnelingMenuItem = menu.findItem(R.id.tunneling); + if (Util.SDK_INT < 21) { + tunnelingMenuItem.setEnabled(false); + } return true; }