diff --git a/RELEASENOTES.md b/RELEASENOTES.md index aabccf11d3..0a27df1985 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -10,6 +10,7 @@ * Add `Player.onPlaybackStateChanged` and deprecate `Player.onPlayerStateChanged`. * Deprecate and rename getPlaybackError to getPlayerError for consistency. + * Deprecate and rename onLoadingChanged to onIsLoadingChanged for consistency. * Make `MediaSourceEventListener.LoadEventInfo` and `MediaSourceEventListener.MediaLoadData` top-level classes. * Rename `MediaCodecRenderer.onOutputFormatChanged` to diff --git a/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImpl.java b/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImpl.java index 947562f79d..e807f3f169 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImpl.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/ExoPlayerImpl.java @@ -1202,7 +1202,11 @@ import java.util.concurrent.TimeoutException; playbackInfo.trackGroups, playbackInfo.trackSelectorResult.selections)); } if (isLoadingChanged) { - invokeAll(listenerSnapshot, listener -> listener.onLoadingChanged(playbackInfo.isLoading)); + invokeAll( + listenerSnapshot, + listener -> { + listener.onIsLoadingChanged(playbackInfo.isLoading); + }); } if (playbackStateChanged) { invokeAll( diff --git a/library/core/src/main/java/com/google/android/exoplayer2/Player.java b/library/core/src/main/java/com/google/android/exoplayer2/Player.java index f2c36e0992..2710dd7442 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/Player.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/Player.java @@ -407,6 +407,13 @@ public interface Player { * * @param isLoading Whether the source is currently being loaded. */ + @SuppressWarnings("deprecation") + default void onIsLoadingChanged(boolean isLoading) { + onLoadingChanged(isLoading); + } + + /** @deprecated Use {@link #onIsLoadingChanged(boolean)} instead. */ + @Deprecated default void onLoadingChanged(boolean isLoading) {} /** diff --git a/library/core/src/main/java/com/google/android/exoplayer2/SimpleExoPlayer.java b/library/core/src/main/java/com/google/android/exoplayer2/SimpleExoPlayer.java index 82337e880b..6c993d2c4d 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/SimpleExoPlayer.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/SimpleExoPlayer.java @@ -1931,7 +1931,7 @@ public class SimpleExoPlayer extends BasePlayer // Player.EventListener implementation. @Override - public void onLoadingChanged(boolean isLoading) { + public void onIsLoadingChanged(boolean isLoading) { if (priorityTaskManager != null) { if (isLoading && !isPriorityTaskManagerRegistered) { priorityTaskManager.add(C.PRIORITY_PLAYBACK); diff --git a/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsCollector.java b/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsCollector.java index b5456e6d87..f8e6b9b953 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsCollector.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsCollector.java @@ -431,10 +431,10 @@ public class AnalyticsCollector } @Override - public final void onLoadingChanged(boolean isLoading) { + public final void onIsLoadingChanged(boolean isLoading) { EventTime eventTime = generateCurrentPlayerMediaPeriodEventTime(); for (AnalyticsListener listener : listeners) { - listener.onLoadingChanged(eventTime, isLoading); + listener.onIsLoadingChanged(eventTime, isLoading); } } diff --git a/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsListener.java b/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsListener.java index 387c8d0988..418202d9ad 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsListener.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/analytics/AnalyticsListener.java @@ -227,6 +227,13 @@ public interface AnalyticsListener { * @param eventTime The event time. * @param isLoading Whether the player is loading. */ + @SuppressWarnings("deprecation") + default void onIsLoadingChanged(EventTime eventTime, boolean isLoading) { + onLoadingChanged(eventTime, isLoading); + } + + /** @deprecated Use {@link #onIsLoadingChanged(EventTime, boolean)} instead. */ + @Deprecated default void onLoadingChanged(EventTime eventTime, boolean isLoading) {} /** diff --git a/library/core/src/main/java/com/google/android/exoplayer2/util/EventLogger.java b/library/core/src/main/java/com/google/android/exoplayer2/util/EventLogger.java index ca5280d494..eda3f93ba6 100644 --- a/library/core/src/main/java/com/google/android/exoplayer2/util/EventLogger.java +++ b/library/core/src/main/java/com/google/android/exoplayer2/util/EventLogger.java @@ -91,7 +91,7 @@ public class EventLogger implements AnalyticsListener { // AnalyticsListener @Override - public void onLoadingChanged(EventTime eventTime, boolean isLoading) { + public void onIsLoadingChanged(EventTime eventTime, boolean isLoading) { logd(eventTime, "loading", Boolean.toString(isLoading)); } diff --git a/library/core/src/test/java/com/google/android/exoplayer2/analytics/AnalyticsCollectorTest.java b/library/core/src/test/java/com/google/android/exoplayer2/analytics/AnalyticsCollectorTest.java index 63e1045993..6e5d547561 100644 --- a/library/core/src/test/java/com/google/android/exoplayer2/analytics/AnalyticsCollectorTest.java +++ b/library/core/src/test/java/com/google/android/exoplayer2/analytics/AnalyticsCollectorTest.java @@ -1393,7 +1393,7 @@ public final class AnalyticsCollectorTest { } @Override - public void onLoadingChanged(EventTime eventTime, boolean isLoading) { + public void onIsLoadingChanged(EventTime eventTime, boolean isLoading) { reportedEvents.add(new ReportedEvent(EVENT_LOADING_CHANGED, eventTime)); } diff --git a/testutils/src/main/java/com/google/android/exoplayer2/testutil/Action.java b/testutils/src/main/java/com/google/android/exoplayer2/testutil/Action.java index 59a72b906b..3b528db2f2 100644 --- a/testutils/src/main/java/com/google/android/exoplayer2/testutil/Action.java +++ b/testutils/src/main/java/com/google/android/exoplayer2/testutil/Action.java @@ -984,7 +984,7 @@ public abstract class Action { /** * Waits for a specified loading state, returning either immediately or after a call to {@link - * Player.EventListener#onLoadingChanged(boolean)}. + * Player.EventListener#onIsLoadingChanged(boolean)}. */ public static final class WaitForIsLoading extends Action { @@ -1015,7 +1015,7 @@ public abstract class Action { player.addListener( new Player.EventListener() { @Override - public void onLoadingChanged(boolean isLoading) { + public void onIsLoadingChanged(boolean isLoading) { if (targetIsLoading == isLoading) { player.removeListener(this); nextAction.schedule(player, trackSelector, surface, handler);