diff --git a/extensions/media2/src/androidTest/AndroidManifest.xml b/extensions/media2/src/androidTest/AndroidManifest.xml
index b699de67b1..4a9d03e991 100644
--- a/extensions/media2/src/androidTest/AndroidManifest.xml
+++ b/extensions/media2/src/androidTest/AndroidManifest.xml
@@ -22,15 +22,6 @@
-
-
-
-
diff --git a/extensions/media2/src/androidTest/java/com/google/android/exoplayer2/ext/media2/MediaSessionUtilTest.java b/extensions/media2/src/androidTest/java/com/google/android/exoplayer2/ext/media2/MediaSessionUtilTest.java
index 8cf586b846..33667badef 100644
--- a/extensions/media2/src/androidTest/java/com/google/android/exoplayer2/ext/media2/MediaSessionUtilTest.java
+++ b/extensions/media2/src/androidTest/java/com/google/android/exoplayer2/ext/media2/MediaSessionUtilTest.java
@@ -21,7 +21,6 @@ import static java.util.concurrent.TimeUnit.MILLISECONDS;
import android.content.Context;
import android.support.v4.media.session.MediaControllerCompat;
import android.support.v4.media.session.MediaSessionCompat;
-import androidx.annotation.NonNull;
import androidx.media2.common.SessionPlayer;
import androidx.media2.common.SessionPlayer.PlayerResult;
import androidx.media2.session.MediaSession;
@@ -57,7 +56,7 @@ public class MediaSessionUtilTest {
playerTestRule.getExecutor(),
new SessionPlayer.PlayerCallback() {
@Override
- public void onPlayerStateChanged(@NonNull SessionPlayer player, int playerState) {
+ public void onPlayerStateChanged(SessionPlayer player, int playerState) {
if (playerState == SessionPlayer.PLAYER_STATE_PLAYING) {
latch.countDown();
}
diff --git a/extensions/media2/src/androidTest/java/com/google/android/exoplayer2/ext/media2/MediaStubActivity.java b/extensions/media2/src/androidTest/java/com/google/android/exoplayer2/ext/media2/MediaStubActivity.java
deleted file mode 100644
index 23a4491389..0000000000
--- a/extensions/media2/src/androidTest/java/com/google/android/exoplayer2/ext/media2/MediaStubActivity.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * Copyright 2019 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.google.android.exoplayer2.ext.media2;
-
-import android.app.Activity;
-import android.app.KeyguardManager;
-import android.content.Context;
-import android.os.Bundle;
-import android.util.Log;
-import android.view.SurfaceHolder;
-import android.view.SurfaceView;
-import android.view.WindowManager;
-import com.google.android.exoplayer2.ext.media2.test.R;
-import com.google.android.exoplayer2.util.Util;
-
-/** Stub activity to play media contents on. */
-public final class MediaStubActivity extends Activity {
-
- private static final String TAG = "MediaStubActivity";
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.mediaplayer);
-
- // disable enter animation.
- overridePendingTransition(0, 0);
-
- if (Util.SDK_INT >= 27) {
- getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
- setTurnScreenOn(true);
- setShowWhenLocked(true);
- KeyguardManager keyguardManager =
- (KeyguardManager) getSystemService(Context.KEYGUARD_SERVICE);
- keyguardManager.requestDismissKeyguard(this, null);
- } else {
- getWindow()
- .addFlags(
- WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON
- | WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON
- | WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
- | WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
- }
- }
-
- @Override
- public void finish() {
- super.finish();
-
- // disable exit animation.
- overridePendingTransition(0, 0);
- }
-
- @Override
- protected void onResume() {
- Log.i(TAG, "onResume");
- super.onResume();
- }
-
- @Override
- protected void onPause() {
- Log.i(TAG, "onPause");
- super.onPause();
- }
-
- public SurfaceHolder getSurfaceHolder() {
- SurfaceView surface = findViewById(R.id.surface);
- return surface.getHolder();
- }
-}
diff --git a/extensions/media2/src/androidTest/java/com/google/android/exoplayer2/ext/media2/SessionCallbackBuilderTest.java b/extensions/media2/src/androidTest/java/com/google/android/exoplayer2/ext/media2/SessionCallbackBuilderTest.java
index c578b0ba8c..64af343455 100644
--- a/extensions/media2/src/androidTest/java/com/google/android/exoplayer2/ext/media2/SessionCallbackBuilderTest.java
+++ b/extensions/media2/src/androidTest/java/com/google/android/exoplayer2/ext/media2/SessionCallbackBuilderTest.java
@@ -24,7 +24,6 @@ import android.content.Context;
import android.net.Uri;
import android.os.Bundle;
import android.text.TextUtils;
-import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.media2.common.MediaItem;
@@ -41,9 +40,6 @@ import androidx.media2.session.SessionResult;
import androidx.test.core.app.ApplicationProvider;
import androidx.test.ext.junit.runners.AndroidJUnit4;
import androidx.test.filters.LargeTest;
-import androidx.test.platform.app.InstrumentationRegistry;
-import androidx.test.rule.ActivityTestRule;
-import com.google.android.exoplayer2.SimpleExoPlayer;
import com.google.android.exoplayer2.ext.media2.test.R;
import com.google.android.exoplayer2.upstream.RawResourceDataSource;
import java.util.ArrayList;
@@ -60,9 +56,6 @@ import org.junit.runner.RunWith;
/** Tests {@link SessionCallbackBuilder}. */
@RunWith(AndroidJUnit4.class)
public class SessionCallbackBuilderTest {
- @Rule
- public final ActivityTestRule activityRule =
- new ActivityTestRule<>(MediaStubActivity.class);
@Rule public final PlayerTestRule playerTestRule = new PlayerTestRule();
@@ -80,16 +73,6 @@ public class SessionCallbackBuilderTest {
context = ApplicationProvider.getApplicationContext();
executor = playerTestRule.getExecutor();
sessionPlayerConnector = playerTestRule.getSessionPlayerConnector();
-
- // Sets the surface to the player for manual check.
- InstrumentationRegistry.getInstrumentation()
- .runOnMainSync(
- () -> {
- SimpleExoPlayer exoPlayer = playerTestRule.getSimpleExoPlayer();
- exoPlayer
- .getVideoComponent()
- .setVideoSurfaceHolder(activityRule.getActivity().getSurfaceHolder());
- });
}
@Test
@@ -469,8 +452,7 @@ public class SessionCallbackBuilderTest {
executor,
new SessionPlayer.PlayerCallback() {
@Override
- public void onCurrentMediaItemChanged(
- @NonNull SessionPlayer player, @NonNull MediaItem item) {
+ public void onCurrentMediaItemChanged(SessionPlayer player, MediaItem item) {
MediaMetadata metadata = item.getMetadata();
assertThat(metadata.getString(MediaMetadata.METADATA_KEY_MEDIA_ID))
.isEqualTo(testMediaUri.toString());
@@ -613,15 +595,14 @@ public class SessionCallbackBuilderTest {
new MediaController.ControllerCallback() {
@Override
public void onAllowedCommandsChanged(
- @NonNull MediaController controller, @NonNull SessionCommandGroup commands) {
+ MediaController controller, SessionCommandGroup commands) {
if (onAllowedCommandsChangedListener != null) {
onAllowedCommandsChangedListener.onAllowedCommandsChanged(controller, commands);
}
}
@Override
- public void onConnected(
- @NonNull MediaController controller, @NonNull SessionCommandGroup allowedCommands) {
+ public void onConnected(MediaController controller, SessionCommandGroup allowedCommands) {
if (onConnectedListener != null) {
onConnectedListener.onConnected(controller, allowedCommands);
}
diff --git a/extensions/media2/src/androidTest/java/com/google/android/exoplayer2/ext/media2/SessionPlayerConnectorTest.java b/extensions/media2/src/androidTest/java/com/google/android/exoplayer2/ext/media2/SessionPlayerConnectorTest.java
index 1747b3aed7..bc0d167752 100644
--- a/extensions/media2/src/androidTest/java/com/google/android/exoplayer2/ext/media2/SessionPlayerConnectorTest.java
+++ b/extensions/media2/src/androidTest/java/com/google/android/exoplayer2/ext/media2/SessionPlayerConnectorTest.java
@@ -31,7 +31,6 @@ import android.media.AudioManager;
import android.os.Build;
import android.os.Build.VERSION_CODES;
import android.os.Looper;
-import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.util.ObjectsCompat;
import androidx.media.AudioAttributesCompat;
@@ -47,7 +46,6 @@ import androidx.test.filters.MediumTest;
import androidx.test.filters.SdkSuppress;
import androidx.test.filters.SmallTest;
import androidx.test.platform.app.InstrumentationRegistry;
-import androidx.test.rule.ActivityTestRule;
import com.google.android.exoplayer2.ControlDispatcher;
import com.google.android.exoplayer2.DefaultControlDispatcher;
import com.google.android.exoplayer2.Player;
@@ -73,9 +71,6 @@ import org.junit.runner.RunWith;
@SuppressWarnings("FutureReturnValueIgnored")
@RunWith(AndroidJUnit4.class)
public class SessionPlayerConnectorTest {
- @Rule
- public final ActivityTestRule activityRule =
- new ActivityTestRule<>(MediaStubActivity.class);
@Rule public final PlayerTestRule playerTestRule = new PlayerTestRule();
@@ -93,16 +88,6 @@ public class SessionPlayerConnectorTest {
context = ApplicationProvider.getApplicationContext();
executor = playerTestRule.getExecutor();
sessionPlayerConnector = playerTestRule.getSessionPlayerConnector();
-
- // Sets the surface to the player for manual check.
- InstrumentationRegistry.getInstrumentation()
- .runOnMainSync(
- () -> {
- SimpleExoPlayer exoPlayer = playerTestRule.getSimpleExoPlayer();
- exoPlayer
- .getVideoComponent()
- .setVideoSurfaceHolder(activityRule.getActivity().getSurfaceHolder());
- });
}
@Test
@@ -120,7 +105,7 @@ public class SessionPlayerConnectorTest {
executor,
new SessionPlayer.PlayerCallback() {
@Override
- public void onPlayerStateChanged(@NonNull SessionPlayer player, int playerState) {
+ public void onPlayerStateChanged(SessionPlayer player, int playerState) {
if (playerState == PLAYER_STATE_PLAYING) {
onPlayingLatch.countDown();
}
@@ -157,8 +142,7 @@ public class SessionPlayerConnectorTest {
executor,
new SessionPlayer.PlayerCallback() {
@Override
- public void onPlayerStateChanged(
- @NonNull SessionPlayer player, int playerState) {
+ public void onPlayerStateChanged(SessionPlayer player, int playerState) {
if (playerState == PLAYER_STATE_PLAYING) {
onPlayerStatePlayingLatch.countDown();
}
@@ -218,7 +202,7 @@ public class SessionPlayerConnectorTest {
executor,
new SessionPlayer.PlayerCallback() {
@Override
- public void onPlaybackCompleted(@NonNull SessionPlayer player) {
+ public void onPlaybackCompleted(SessionPlayer player) {
onPlaybackCompletedLatch.countDown();
}
});
@@ -242,7 +226,7 @@ public class SessionPlayerConnectorTest {
executor,
new SessionPlayer.PlayerCallback() {
@Override
- public void onPlaybackCompleted(@NonNull SessionPlayer player) {
+ public void onPlaybackCompleted(SessionPlayer player) {
onPlaybackCompletedLatch.countDown();
}
});
@@ -359,7 +343,7 @@ public class SessionPlayerConnectorTest {
SessionPlayer.PlayerCallback callback =
new SessionPlayer.PlayerCallback() {
@Override
- public void onPlaybackCompleted(@NonNull SessionPlayer player) {
+ public void onPlaybackCompleted(SessionPlayer player) {
onPlaybackCompletedLatch.countDown();
}
};
@@ -420,7 +404,7 @@ public class SessionPlayerConnectorTest {
executor,
new SessionPlayer.PlayerCallback() {
@Override
- public void onSeekCompleted(@NonNull SessionPlayer player, long position) {
+ public void onSeekCompleted(SessionPlayer player, long position) {
// Do not assert here, because onSeekCompleted() can be called after the player is
// closed.
positionChanges.add(position);
@@ -483,7 +467,7 @@ public class SessionPlayerConnectorTest {
executor,
new SessionPlayer.PlayerCallback() {
@Override
- public void onSeekCompleted(@NonNull SessionPlayer player, long position) {
+ public void onSeekCompleted(SessionPlayer player, long position) {
// Do not assert here, because onSeekCompleted() can be called after the player is
// closed.
seekPosition.set(position);
@@ -553,7 +537,7 @@ public class SessionPlayerConnectorTest {
SessionPlayer.PlayerCallback callback =
new SessionPlayer.PlayerCallback() {
@Override
- public void onPlayerStateChanged(@NonNull SessionPlayer player, int state) {
+ public void onPlayerStateChanged(SessionPlayer player, int state) {
if (state == SessionPlayer.PLAYER_STATE_PAUSED) {
onPlayerStatePaused.countDown();
}
@@ -577,7 +561,7 @@ public class SessionPlayerConnectorTest {
new SessionPlayer.PlayerCallback() {
@Override
public void onBufferingStateChanged(
- @NonNull SessionPlayer player, MediaItem item, int buffState) {
+ SessionPlayer player, @Nullable MediaItem item, int buffState) {
bufferingStateChanges.add(buffState);
if (buffState == SessionPlayer.BUFFERING_STATE_COMPLETE) {
onBufferingCompletedLatch.countDown();
@@ -613,7 +597,7 @@ public class SessionPlayerConnectorTest {
SessionPlayer.PlayerCallback callback =
new SessionPlayer.PlayerCallback() {
@Override
- public void onSeekCompleted(@NonNull SessionPlayer player, long position) {
+ public void onSeekCompleted(SessionPlayer player, long position) {
onSeekCompletedLatch.countDown();
}
};
@@ -636,7 +620,7 @@ public class SessionPlayerConnectorTest {
SessionPlayer.PlayerCallback callback =
new SessionPlayer.PlayerCallback() {
@Override
- public void onPlaybackSpeedChanged(@NonNull SessionPlayer player, float speed) {
+ public void onPlaybackSpeedChanged(SessionPlayer player, float speed) {
assertThat(speed).isWithin(FLOAT_TOLERANCE).of(0.5f);
onPlaybackSpeedChangedLatch.countDown();
}
@@ -736,7 +720,6 @@ public class SessionPlayerConnectorTest {
@SmallTest
@SdkSuppress(minSdkVersion = Build.VERSION_CODES.KITKAT)
public void setPlaylist_withNullPlaylist_throwsException() throws Exception {
- List playlist = TestUtils.createPlaylist(10);
try {
sessionPlayerConnector.setPlaylist(null, null);
assertWithMessage("null playlist shouldn't be allowed").fail();
@@ -783,7 +766,7 @@ public class SessionPlayerConnectorTest {
PlayerCallbackForPlaylist callback =
new PlayerCallbackForPlaylist(playlist, 2) {
@Override
- public void onPlayerStateChanged(@NonNull SessionPlayer player, int playerState) {
+ public void onPlayerStateChanged(SessionPlayer player, int playerState) {
countDown();
}
};
@@ -811,7 +794,7 @@ public class SessionPlayerConnectorTest {
new SessionPlayer.PlayerCallback() {
@Override
public void onPlaylistChanged(
- @NonNull SessionPlayer player,
+ SessionPlayer player,
@Nullable List list,
@Nullable MediaMetadata metadata) {
assertThat(list).isEqualTo(playlist);
@@ -830,7 +813,6 @@ public class SessionPlayerConnectorTest {
@SdkSuppress(minSdkVersion = Build.VERSION_CODES.KITKAT)
public void setPlaylist_byUnderlyingPlayerBeforePrepare_notifiesOnPlaylistChanged()
throws Exception {
- List playlistToSessionPlayer = TestUtils.createPlaylist(2);
List playlistToExoPlayer = TestUtils.createPlaylist(4);
DefaultMediaItemConverter converter = new DefaultMediaItemConverter();
List exoMediaItems = new ArrayList<>();
@@ -844,7 +826,7 @@ public class SessionPlayerConnectorTest {
new SessionPlayer.PlayerCallback() {
@Override
public void onPlaylistChanged(
- @NonNull SessionPlayer player,
+ SessionPlayer player,
@Nullable List list,
@Nullable MediaMetadata metadata) {
if (ObjectsCompat.equals(list, playlistToExoPlayer)) {
@@ -876,7 +858,7 @@ public class SessionPlayerConnectorTest {
new SessionPlayer.PlayerCallback() {
@Override
public void onPlaylistChanged(
- @NonNull SessionPlayer player,
+ SessionPlayer player,
@Nullable List list,
@Nullable MediaMetadata metadata) {
if (ObjectsCompat.equals(list, playlistToExoPlayer)) {
@@ -908,7 +890,7 @@ public class SessionPlayerConnectorTest {
new SessionPlayer.PlayerCallback() {
@Override
public void onPlaylistChanged(
- @NonNull SessionPlayer player,
+ SessionPlayer player,
@Nullable List list,
@Nullable MediaMetadata metadata) {
assertThat(list).isEqualTo(playlist);
@@ -936,7 +918,7 @@ public class SessionPlayerConnectorTest {
new SessionPlayer.PlayerCallback() {
@Override
public void onPlaylistChanged(
- @NonNull SessionPlayer player,
+ SessionPlayer player,
@Nullable List list,
@Nullable MediaMetadata metadata) {
assertThat(list).isEqualTo(playlist);
@@ -965,7 +947,7 @@ public class SessionPlayerConnectorTest {
new SessionPlayer.PlayerCallback() {
@Override
public void onPlaylistChanged(
- @NonNull SessionPlayer player,
+ SessionPlayer player,
@Nullable List list,
@Nullable MediaMetadata metadata) {
assertThat(list).isEqualTo(playlist);
@@ -1019,8 +1001,7 @@ public class SessionPlayerConnectorTest {
int currentMediaItemChangedCount = 0;
@Override
- public void onCurrentMediaItemChanged(
- @NonNull SessionPlayer player, @NonNull MediaItem item) {
+ public void onCurrentMediaItemChanged(SessionPlayer player, MediaItem item) {
assertThat(item).isEqualTo(player.getCurrentMediaItem());
int expectedCurrentIndex = currentMediaItemChangedCount++;
@@ -1029,7 +1010,7 @@ public class SessionPlayerConnectorTest {
}
@Override
- public void onPlaybackCompleted(@NonNull SessionPlayer player) {
+ public void onPlaybackCompleted(SessionPlayer player) {
onPlaybackCompletedLatch.countDown();
}
});
@@ -1054,7 +1035,7 @@ public class SessionPlayerConnectorTest {
executor,
new SessionPlayer.PlayerCallback() {
@Override
- public void onPlayerStateChanged(@NonNull SessionPlayer player, int playerState) {
+ public void onPlayerStateChanged(SessionPlayer player, int playerState) {
if (playerState == PLAYER_STATE_PLAYING) {
onPlayingLatch.countDown();
}
@@ -1093,7 +1074,7 @@ public class SessionPlayerConnectorTest {
executor,
new SessionPlayer.PlayerCallback() {
@Override
- public void onPlayerStateChanged(@NonNull SessionPlayer player, int playerState) {
+ public void onPlayerStateChanged(SessionPlayer player, int playerState) {
if (playerState == PLAYER_STATE_PAUSED) {
onPausedLatch.countDown();
}
@@ -1119,7 +1100,7 @@ public class SessionPlayerConnectorTest {
executor,
new SessionPlayer.PlayerCallback() {
@Override
- public void onPlayerStateChanged(@NonNull SessionPlayer player, int playerState) {
+ public void onPlayerStateChanged(SessionPlayer player, int playerState) {
playerStateChanges.add(playerState);
playerStateChangesLatch.countDown();
}
@@ -1170,8 +1151,7 @@ public class SessionPlayerConnectorTest {
SessionPlayer.PlayerCallback skipToNextTestCallback =
new SessionPlayer.PlayerCallback() {
@Override
- public void onCurrentMediaItemChanged(
- @NonNull SessionPlayer player, @NonNull MediaItem item) {
+ public void onCurrentMediaItemChanged(SessionPlayer player, MediaItem item) {
super.onCurrentMediaItemChanged(player, item);
assertThat(player.getCurrentMediaItemIndex()).isEqualTo(1);
assertThat(item).isEqualTo(player.getCurrentMediaItem());
@@ -1189,8 +1169,7 @@ public class SessionPlayerConnectorTest {
SessionPlayer.PlayerCallback skipToPreviousTestCallback =
new SessionPlayer.PlayerCallback() {
@Override
- public void onCurrentMediaItemChanged(
- @NonNull SessionPlayer player, @NonNull MediaItem item) {
+ public void onCurrentMediaItemChanged(SessionPlayer player, MediaItem item) {
super.onCurrentMediaItemChanged(player, item);
assertThat(player.getCurrentMediaItemIndex()).isEqualTo(0);
assertThat(item).isEqualTo(player.getCurrentMediaItem());
@@ -1221,15 +1200,14 @@ public class SessionPlayerConnectorTest {
PlayerCallbackForPlaylist callback =
new PlayerCallbackForPlaylist(playlist, listSize + 2) {
@Override
- public void onCurrentMediaItemChanged(
- @NonNull SessionPlayer player, @NonNull MediaItem item) {
+ public void onCurrentMediaItemChanged(SessionPlayer player, MediaItem item) {
super.onCurrentMediaItemChanged(player, item);
currentMediaItemChanges.add(item);
countDown();
}
@Override
- public void onPlaybackCompleted(@NonNull SessionPlayer player) {
+ public void onPlaybackCompleted(SessionPlayer player) {
assertWithMessage(
"Playback shouldn't be completed, Actual changes were %s",
currentMediaItemChanges)
@@ -1305,7 +1283,7 @@ public class SessionPlayerConnectorTest {
}
private class PlayerCallbackForPlaylist extends SessionPlayer.PlayerCallback {
- private List playlist;
+ private final List playlist;
private CountDownLatch onCurrentMediaItemChangedLatch;
PlayerCallbackForPlaylist(List playlist, int count) {
@@ -1314,7 +1292,7 @@ public class SessionPlayerConnectorTest {
}
@Override
- public void onCurrentMediaItemChanged(@NonNull SessionPlayer player, @NonNull MediaItem item) {
+ public void onCurrentMediaItemChanged(SessionPlayer player, MediaItem item) {
int currentIndex = playlist.indexOf(item);
assertThat(sessionPlayerConnector.getCurrentMediaItemIndex()).isEqualTo(currentIndex);
onCurrentMediaItemChangedLatch.countDown();