diff --git a/extensions/cast/src/main/java/com/google/android/exoplayer2/ext/cast/CastPlayer.java b/extensions/cast/src/main/java/com/google/android/exoplayer2/ext/cast/CastPlayer.java index 4fa1275f38..c198b49777 100644 --- a/extensions/cast/src/main/java/com/google/android/exoplayer2/ext/cast/CastPlayer.java +++ b/extensions/cast/src/main/java/com/google/android/exoplayer2/ext/cast/CastPlayer.java @@ -125,11 +125,6 @@ public final class CastPlayer extends BasePlayer { notificationsBatch = new ArrayList<>(); ongoingNotificationsTasks = new ArrayDeque<>(); - SessionManager sessionManager = castContext.getSessionManager(); - sessionManager.addSessionManagerListener(statusListener, CastSession.class); - CastSession session = sessionManager.getCurrentCastSession(); - remoteMediaClient = session != null ? session.getRemoteMediaClient() : null; - playWhenReady = new StateHolder<>(false); repeatMode = new StateHolder<>(REPEAT_MODE_OFF); playbackState = STATE_IDLE; @@ -138,6 +133,11 @@ public final class CastPlayer extends BasePlayer { currentTrackSelection = EMPTY_TRACK_SELECTION_ARRAY; pendingSeekWindowIndex = C.INDEX_UNSET; pendingSeekPositionMs = C.TIME_UNSET; + + SessionManager sessionManager = castContext.getSessionManager(); + sessionManager.addSessionManagerListener(statusListener, CastSession.class); + CastSession session = sessionManager.getCurrentCastSession(); + setRemoteMediaClient(session != null ? session.getRemoteMediaClient() : null); updateInternalStateAndNotifyIfChanged(); }