[IMA-SDK Android] When seeking to just before the Midroll ad immediately after the Preroll ad finishes, the expected events are not fired.

33 views
Skip to first unread message

pineapplevine1

unread,
Nov 5, 2025, 11:29:13 PMNov 5
to Interactive Media Ads SDK
Hi IMA Team

When seeking to just before the Midroll ad immediately after the Preroll ad finishes, the expected events are not fired.
How can this be avoided?

Inquiry Overview
When seeking to just before the Midroll ad immediately after the Preroll ad finishes, the following two issues occur:
・Events from STARTED to COMPLETED are not fired
・The CONTENT_PAUSE_REQUESTED event is fired after the Midroll ad playback ends

Expected Behavior
・Events from STARTED to COMPLETED should be fired
・The CONTENT_PAUSE_REQUESTED event is fired before the Midroll ad playback

Reproduction Steps
1.Play the content
2.Seek to just before the Midroll ad
3.Wait until the Midroll ad playback is completed
4.LOADED and CONTENT_PAUSE_REQUESTED are fired, but events from STARTED to COMPLETED are not fired.
CONTENT_PAUSE_REQUESTED is fired after the Midroll ad playback ends.

Log during issue reproduction

(Preroll ad plays) 2025-10-30 14:07:28.893 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: LOADED 2025-10-30 14:07:28.934 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: CONTENT_PAUSE_REQUESTED 2025-10-30 14:07:29.007 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: PAUSED 2025-10-30 14:07:43.698 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: RESUMED 2025-10-30 14:07:43.959 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: STARTED 2025-10-30 14:07:47.712 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: FIRST_QUARTILE 2025-10-30 14:07:51.352 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: MIDPOINT 2025-10-30 14:07:55.171 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: THIRD_QUARTILE 2025-10-30 14:07:58.914 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: COMPLETED 2025-10-30 14:07:58.941 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: AD_BUFFERING 2025-10-30 14:07:58.955 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: LOADED 2025-10-30 14:07:59.031 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: STARTED 2025-10-30 14:08:02.650 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: FIRST_QUARTILE 2025-10-30 14:08:06.454 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: MIDPOINT 2025-10-30 14:08:10.267 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: THIRD_QUARTILE 2025-10-30 14:08:14.097 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: COMPLETED (Preroll ad finishes, content starts playing) 2025-10-30 14:08:14.130 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: CONTENT_RESUME_REQUESTED (When CONTENT_RESUME_REQUESTED is fired, perform the "seekTo(781500)" immediately before the Midroll ad) 2025-10-30 14:08:14.654 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: LOADED (Midroll ad plays, but STARTED and CONTENT_PAUSE_REQUESTED are not fired) (During this time, the Midroll ad plays until playback ends) 2025-10-30 14:09:00.889 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: CONTENT_PAUSE_REQUESTED 2025-10-30 14:09:08.993 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: LOG 2025-10-30 14:09:09.014 27690-27690 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: LOADED

Log during normal playback

(Preroll ad plays) 2025-11-05 13:19:47.491 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: LOADED 2025-11-05 13:19:47.537 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: CONTENT_PAUSE_REQUESTED 2025-11-05 13:19:47.712 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: PAUSED 2025-11-05 13:19:51.640 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: RESUMED 2025-11-05 13:19:51.964 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: STARTED 2025-11-05 13:19:55.555 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: FIRST_QUARTILE 2025-11-05 13:19:59.389 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: MIDPOINT 2025-11-05 13:20:03.207 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: THIRD_QUARTILE 2025-11-05 13:20:06.958 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: COMPLETED 2025-11-05 13:20:06.976 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: AD_BUFFERING 2025-11-05 13:20:06.987 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: LOADED 2025-11-05 13:20:07.069 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: STARTED 2025-11-05 13:20:10.686 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: FIRST_QUARTILE 2025-11-05 13:20:14.510 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: MIDPOINT 2025-11-05 13:20:18.124 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: THIRD_QUARTILE 2025-11-05 13:20:22.190 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: COMPLETED (Preroll ad finishes, content starts playing) 2025-11-05 13:20:22.222 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: CONTENT_RESUME_REQUESTED (After Preroll completion, wait a little, then seek immediately before the Midroll ad) 2025-11-05 13:22:39.625 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: LOADED 2025-11-05 13:22:47.459 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: CONTENT_PAUSE_REQUESTED (The first Midroll ad plays) 2025-11-05 13:22:47.604 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: STARTED 2025-11-05 13:22:51.387 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: FIRST_QUARTILE 2025-11-05 13:22:55.220 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: MIDPOINT 2025-11-05 13:22:59.053 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: THIRD_QUARTILE 2025-11-05 13:23:02.674 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: COMPLETED (The second Midroll ad plays) 2025-11-05 13:23:02.698 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: LOADED 2025-11-05 13:23:02.795 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: STARTED 2025-11-05 13:23:06.385 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: FIRST_QUARTILE 2025-11-05 13:23:10.245 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: MIDPOINT 2025-11-05 13:23:14.054 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: THIRD_QUARTILE 2025-11-05 13:23:17.664 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: COMPLETED (The third Midroll ad plays) 2025-11-05 13:23:17.696 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: LOADED 2025-11-05 13:23:17.785 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: STARTED 2025-11-05 13:23:21.371 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: FIRST_QUARTILE 2025-11-05 13:23:25.205 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: MIDPOINT 2025-11-05 13:23:29.071 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: THIRD_QUARTILE 2025-11-05 13:23:32.697 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: COMPLETED (The fourth Midroll ad plays) 2025-11-05 13:23:32.738 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: LOADED 2025-11-05 13:23:32.824 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: STARTED 2025-11-05 13:23:36.431 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: FIRST_QUARTILE 2025-11-05 13:23:40.321 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: MIDPOINT 2025-11-05 13:23:43.946 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: THIRD_QUARTILE 2025-11-05 13:23:48.214 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: COMPLETED 2025-11-05 13:23:48.240 24543-24543 ImaExoPlayerExample com...a.v3.samples.exoplayerexample I IMA event: CONTENT_RESUME_REQUESTED (Content resumes)

Reproduction Rate
4/10

Environment Where Issue Occurs
Reproduced with IMA SDK sample app (v3.37.0-0)

googleads-ima-android-3.37.0-0/ExoPlayerExample

Modifications Made to the App
Due to its large size, please provide a shared link.

Device for Reproduction
Galaxy Note8 (SC-01K)

OS Version
Android 9

Best Regards.

LOG.txt

IMA SDK

unread,
Nov 6, 2025, 7:58:22 AMNov 6
to pineapp...@gmail.com, ima...@googlegroups.com
Hi,
 
Thank you for reaching out to the IMA SDK Support team.
 
Kindly share the VAST tag and a sample project that reproduces the issue via reply to author option? using the drive link provided below.
 

Additionally, could you please confirm whether this issue occurs only on the Galaxy Note8 running Android 9 or if it is also observed on other devices?

If the file(s) you are looking to share are less than 25mb in total you can attach them to this case on your next reply. If you are having trouble attaching your file to this case or if your file(s) are larger than 25mb, you can share your files with me by performing the following steps:

1. Navigate to

https://docs.google.com/forms/d/e/1FAIpQLSfkAiXMeYP-fw1W3Z-tT9uwmATEKO5X6S-th0gR2ezdKaaqfg/viewform?usp=pp_url&entry.400550049=IMA+SDK&entry.460850823=500Ht00001vSp34IAC&entry.80707362=00338607

2. Fill out all fields, and attach your file(s).

3. Please reply back to this thread when you have uploaded your file(s). Please do not share this link.

Thanks,
 
Google Logo IMA SDK Team

Feedback
How was our support today?

rating1    rating2    rating3    rating4    rating5
[2025-11-06 12:58:07Z GMT] This message is in relation to case "ref:!00D1U01174p.!500Ht01vSp34:ref" (ADR-00338607)



pineapplevine1

unread,
Nov 9, 2025, 11:52:16 PMNov 9
to Interactive Media Ads SDK

Hi IMA Team

First, in response to whether it occurs on devices other than the Galaxy Note8: it does.
We confirmed the issue on a Pixel 9 running Android 16.

We have uploaded the app and the reproduction video via the URL.
Please refer inside the app for the ad and content that reproduce the issue.

The modifications to the app are below.

・Added seek processing (lines 10-12)
/googleads-ima-android-3.37.0-0/ExoPlayerExample/app/src/main/java/com/google/ads/interactivemedia/v3/samples/exoplayerexample/MyActivity.java>buildAdEventListener()

public AdEvent.AdEventListener buildAdEventListener() { logText = findViewById(R.id.logText); logText.setMovementMethod(new ScrollingMovementMethod()); return event -> { AdEvent.AdEventType eventType = event.getType(); if (eventType == AdEvent.AdEventType.AD_PROGRESS) { return; } else if (eventType == AdEvent.AdEventType.CONTENT_RESUME_REQUESTED) { player.seekTo(781500); } String log = "IMA event: " + eventType; if (logText != null) { logText.append(log + "\n"); } Log.i(LOG_TAG, log); }; }

・Added DRM processing
/googleads-ima-android-3.37.0-0/ExoPlayerExample/app/src/main/java/com/google/ads/interactivemedia/v3/samples/exoplayerexample/MyActivity.java>initializePlayer()

private void initializePlayer() { // Widevine DRM compatible DASH content Uri contentUri = Uri.parse("DRM compatible DASH content URL"); Uri adTagUri = Uri.parse(SAMPLE_VAST_TAG_URL); String licenseUrl = "license URL"; String customerData = "customerData"; // --- HttpDataSource.Factory with custom headers --- HttpDataSource.Factory httpDataSourceFactory = new DefaultHttpDataSource.Factory() .setDefaultRequestProperties( Collections.singletonMap("acquirelicenseassertion", customerData) ); // --- Build DRM session manager --- MediaDrmCallback drmCallback = new HttpMediaDrmCallback(licenseUrl, httpDataSourceFactory); DefaultDrmSessionManager drmSessionManager; drmSessionManager = new DefaultDrmSessionManager.Builder() .setUuidAndExoMediaDrmProvider( C.WIDEVINE_UUID, uuid -> { try { return FrameworkMediaDrm.newInstance(uuid); } catch (UnsupportedDrmException e) { throw new RuntimeException(e); } } ) .build(drmCallback); // --- Regular data source factory --- DataSource.Factory dataSourceFactory = new DefaultDataSource.Factory(this); // --- Integrate DRM and AdsLoader into MediaSourceFactory --- MediaSource.Factory mediaSourceFactory = new DefaultMediaSourceFactory(dataSourceFactory) .setDrmSessionManagerProvider(unused -> drmSessionManager) .setLocalAdInsertionComponents(unusedAdTagUri -> adsLoader, playerView); // --- Create player --- player = new ExoPlayer.Builder(this) .setMediaSourceFactory(mediaSourceFactory) .build(); playerView.setPlayer(player); adsLoader.setPlayer(player); // --- Configure MediaItem (DRM + Ads) --- MediaItem mediaItem = new MediaItem.Builder() .setUri(contentUri) .setAdsConfiguration(new MediaItem.AdsConfiguration.Builder(adTagUri).build()) .setDrmConfiguration(new MediaItem.DrmConfiguration.Builder(C.WIDEVINE_UUID) .setLicenseUri(licenseUrl) .build()) .build(); player.setMediaItem(mediaItem); player.prepare(); player.setPlayWhenReady(false); }

Best Regards.


2025年11月6日木曜日 21:58:22 UTC+9 IMA SDK:

IMA SDK

unread,
Nov 10, 2025, 6:27:17 AMNov 10
to pineapp...@gmail.com, ima...@googlegroups.com
Hi,

Thanks for providing the details.

I ran your sample project on a Pixel 9 running Android 16 and was able to see the ad events, from STARTED to COMPLETED, for the Mid-roll ad immediately after the Pre-roll ad finished. For further investigation, could you please confirm if there are any other affected devices apart from the Samsung Galaxy Note 8 and the Pixel 9?

Additionally, It is always recommended to use the latest SDK version 3.38.0. If the issue still occurs after updating, please let us know.


Thanks,
 
Google Logo IMA SDK Team

Feedback
How was our support today?

rating1    rating2    rating3    rating4    rating5

[2025-11-10 11:27:07Z GMT] This message is in relation to case "ref:!00D1U01174p.!500Ht01vSp34:ref" (ADR-00338607)



pineapplevine1

unread,
Nov 12, 2025, 4:10:59 AMNov 12
to Interactive Media Ads SDK
Hi IMA Team

Regarding this issue, it also reproduced on a Pixel 5 with Android 14 and SDK version 3.38.0.
We uploaded the SDK 3.38.0 app via the URL.
We will reattach in this thread the event logs for the occurrence case and the normal case.
Please check again.

We will explain the flow of the issue again.

1.Right after the preroll ad, we seek in the source. After LOADED arrives, the first midroll ad is shown.
 We believe STARTED–COMPLETED should fire here, however they don’t.
2.After the first midroll ad ends, CONTENT_PAUSE_REQUESTED appears and then the content plays.
 We believe CONTENT_PAUSE_REQUESTED should come before the midroll ad playback, however it comes afterwards.

Also, normally during ads a label like “Ad 2 of 2” appears at the lower left and operations are disabled.
When the issue occurs, that label does not appear.
However, since operations are still disabled, it should be possible to distinguish ad vs content.

Best Regards.

2025年11月10日月曜日 20:27:17 UTC+9 IMA SDK:
Log during normal playback.txt
Log during issue reproduction.txt

IMA SDK

unread,
Nov 13, 2025, 7:33:29 AMNov 13
to pineapp...@gmail.com, ima...@googlegroups.com
Hi,

Thank you for providing the details and the sample project.

I’m currently investigating your case and will get back to you shortly.


Thanks,
 
Google Logo IMA SDK Team

Feedback
How was our support today?

rating1    rating2    rating3    rating4    rating5

[2025-11-13 12:33:21Z GMT] This message is in relation to case "ref:!00D1U01174p.!500Ht01vSp34:ref" (ADR-00338607)



IMA SDK

unread,
Nov 19, 2025, 1:07:36 PM (10 days ago) Nov 19
to ima...@googlegroups.com, pineapp...@gmail.com
Hi,

I will raise this issue with our wider team for further review and will update you as soon as I have any new information.Meanwhile, your patience is appreciated.


Thanks,
 
Google Logo IMA SDK Team

Feedback
How was our support today?

rating1    rating2    rating3    rating4    rating5

[2025-11-19 18:07:28Z GMT] This message is in relation to case "ref:!00D1U01174p.!500Ht01vSp34:ref" (ADR-00338607)



Reply all
Reply to author
Forward
0 new messages