Skip to content

Commit f946714

Browse files
committed
Release notes and formatting
1 parent b802b20 commit f946714

File tree

2 files changed

+8
-8
lines changed

2 files changed

+8
-8
lines changed

RELEASENOTES.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -201,6 +201,9 @@
201201
* Bump IMA dependency to 3.37.0 which requires enabling core library
202202
desugaring. This must also be enabled by dependent apps too. See IMA's
203203
[config notes](https://developers.google.com/interactive-media-ads/docs/sdks/android/client-side/get-started#2.-add-the-ima-sdk-to-your-project).
204+
* Fix issue where content preparation error for content after an ad would
205+
be wrongly reported as an ad playback error
206+
([#2656](https://github.com/androidx/media/issues/2656)).
204207
* Session:
205208
* Add new parameter to `MediaSession.Callback.onPlaybackResumption` to
206209
indicate if the call happens to gather information only or to start

libraries/exoplayer_ima/src/main/java/androidx/media3/exoplayer/ima/AdTagLoader.java

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -391,18 +391,15 @@ public void activate(Player player) {
391391
/** Deactivates playback. */
392392
public void deactivate() {
393393
Player player = checkNotNull(this.player);
394-
// Post release of listener behind any already queued Player.Listener events to ensure that
395-
// any pending events are processed before the player is deferred.
396-
handler.post(
397-
() -> {
398-
deactivateInternal(player);
399-
});
394+
// Post deactivation behind any already queued Player.Listener events to ensure that
395+
// any pending events are processed before the listener is removed and the ads manager paused.
396+
handler.post(() -> deactivateInternal(player));
400397
}
401398

402399
/**
403400
* Deactivates playback internally, after the Listener.onEvents() cycle completes so the complete
404-
* state change picture is clear. For example, if an error caused the deactivation, need to
405-
* determine whether the error was for an ad or content.
401+
* state change picture is clear. For example, if an error caused the deactivation, the error
402+
* callback can be handled first.
406403
*/
407404
private void deactivateInternal(Player player) {
408405
if (!AdPlaybackState.NONE.equals(adPlaybackState)

0 commit comments

Comments
 (0)