Hi Vu,
Yes, destroy from the adsManager is always called before requesting new ads. Right after destroying the adsLoader, we are also removing all views from the adUiContainer of the adDisplayContainer just to be sure they are removed as we were having issues with this some time ago.
Basicaly the code for releaseAdPlayer is:
private void releaseAdPlayer() {
L.g(TAG, "releaseAdPlayer");
if (mAdsManager != null) {
L.g(TAG, "adsManager.destroy()");
mAdsManager.destroy();
mAdsManager = null;
}
if (mAdUiContainer != null) {
mAdUiContainer.removeAllViews();
}
releaseExoPlayer();
}
I added a bit more logging to the app for you to understand the sequence of events:
01-21 09:12:05.428 6454-6454/ D/AdPlayer: AD onAdsManagerLoaded
01-21 09:12:14.425 6454-6454/ D/AdPlayer: AD onAdEvent: LOADED
01-21 09:12:16.432 6454-6454/ D/AdPlayer: AD onAdEvent: CONTENT_PAUSE_REQUESTED
01-21 09:12:19.420 6454-6454/ D/AdPlayer: AdPlayer.loadAd:
http://ds.serving-sys.com/BurstingRes/Site-14584/Type-16/a5387e3e-c990-4d1c-abef-8d7e646ea852.mp401-21 09:12:20.472 6454-6454/ D/AdPlayer: callback.onPlay()
01-21 09:12:21.478 6454-6454/ D/AdPlayer: AdPlayer.playAd
01-21 09:12:25.146 6454-10001/ D/ZapiClient: request /zapi/watch success: {"stream": {"url": "url", "maxrate": 1500, "audio_channel": "A"}, {"url": "url", "maxrate": 600, "audio_channel": "A"}], "ad": {"vast_url": "
http://pubads.g.doubleclick.net/gampad/ads?sz=640x480&iu=/40762806/prel-10-de/prel-10-video/prel-10-cs/prel-10-android-tablet&impl=s&gdfp_req=1&env=vp&output=vast&unviewed_position_start=1&url=http%3A%2F%2Fzattoo.com%2F&description_url=http%3A%2F%2Fzattoo.com%2F&correlator=[timestamp]&cust_params=uid%3Dfe3bbf8459c1415d80fa6ce9ad7d806d%26zuid%3D19449910%26random%3D9172137528299739442%26genresnext%3DHome%20Shopping%2CEconomy%26email_allowed%3D1%26genres%3DHome%20Shopping%2CEconomy%26title%3DTeleshopping%26variantgroup%3D0%26adcount%3D23%26clanguage%3Dde%26channel%3Dweltderwunder%26last_watch%3D26%26appversion%3D2006001%26titlenext%3DTeleshopping%26adid%3Dnull%26embed%3Dpartner_zapi%26email_valid%3D0%26language%3Dde%26gender%3Dnone%26session_id%3D5b011ea3c2d68c71a510e23d0c1b6b8e%26appid%3D87%26forerun%3D47", "type": "cs"}}, "success": true}
01-21 09:12:25.218 6454-6454/ D/AdPlayer: releaseAdPlayer
01-21 09:12:25.218 6454-6454/ D/AdPlayer: adsManager.destroy()
01-21 09:12:25.272 6454-6454/ D/AdPlayer: requestAd for ppid fe3bbf8459c1415d80fa6ce9ad7d806d:
http://pubads.g.doubleclick.net/gampad/ads?sz=640x480&iu=/40762806/prel-10-de/prel-10-video/prel-10-cs/prel-10-android-tablet&impl=s&gdfp_req=1&env=vp&output=vast&unviewed_position_start=1&url=http%3A%2F%2Fzattoo.com%2F&description_url=http%3A%2F%2Fzattoo.com%2F&correlator=[timestamp]&cust_params=uid%3Dfe3bbf8459c1415d80fa6ce9ad7d806d%26zuid%3D19449910%26random%3D9172137528299739442%26genresnext%3DHome%20Shopping%2CEconomy%26email_allowed%3D1%26genres%3DHome%20Shopping%2CEconomy%26title%3DTeleshopping%26variantgroup%3D0%26adcount%3D23%26clanguage%3Dde%26channel%3Dweltderwunder%26last_watch%3D26%26appversion%3D2006001%26titlenext%3DTeleshopping%26adid%3Dnull%26embed%3Dpartner_zapi%26email_valid%3D0%26language%3Dde%26gender%3Dnone%26session_id%3D5b011ea3c2d68c71a510e23d0c1b6b8e%26appid%3D87%26forerun%3D4701-21 09:12:41.432 6454-6454/ D/AdPlayer: AD onAdEvent: STARTED
01-21 09:12:41.761 6454-6454/ D/AdPlayer: AdPlayer.pauseAd
01-21 09:12:41.789 6454-6454/ D/AdPlayer: AD onAdsManagerLoaded
01-21 09:12:42.125 6454-6454/ D/AdPlayer: AD onAdEvent: LOADED
01-21 09:12:42.141 6454-6454/ D/AdPlayer: AD onAdEvent: CONTENT_PAUSE_REQUESTED
01-21 09:12:42.155 6454-6454/ D/AdPlayer: AdPlayer.loadAd:
http://ad.71i.de/images/loreal/2016/138136/160113_Loreal_Men_Expert_Pure_Power_Motiv2_20sec.mp401-21 09:12:42.182 6454-6454/ D/AdPlayer: AdPlayer.playAd
01-21 09:12:42.741 6454-6454/ D/AdPlayer: callback.onPlay()
01-21 09:12:43.097 6454-6454/ W/System.err: java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first.
01-21 09:12:43.101 6454-6454/ W/System.err: at android.view.ViewGroup.addViewInner(ViewGroup.java:3949)
01-21 09:12:43.101 6454-6454/ W/System.err: at android.view.ViewGroup.addView(ViewGroup.java:3799)
01-21 09:12:43.101 6454-6454/ W/System.err: at android.view.ViewGroup.addView(ViewGroup.java:3771)
01-21 09:12:43.102 6454-6454/ W/System.err: at com.google.ads.interactivemedia.v3.impl.a.f.a(IMASDK:28)
01-21 09:12:43.102 6454-6454/ W/System.err: at com.google.ads.interactivemedia.v3.impl.j.a(IMASDK:105)
01-21 09:12:43.102 6454-6454/ W/System.err: at com.google.ads.interactivemedia.v3.impl.j.a(IMASDK:73)
01-21 09:12:43.102 6454-6454/ W/System.err: at com.google.ads.interactivemedia.v3.impl.aa.a(IMASDK:139)
01-21 09:12:43.102 6454-6454/ W/System.err: at com.google.ads.interactivemedia.v3.impl.h$a.a(IMASDK:379)
01-21 09:12:43.102 6454-6454/ W/System.err: at com.google.ads.interactivemedia.v3.impl.x.f(IMASDK:533)
01-21 09:12:43.102 6454-6454/ W/System.err: at com.google.ads.interactivemedia.v3.impl.x.a(IMASDK:304)
01-21 09:12:43.102 6454-6454/ W/System.err: at com.google.ads.interactivemedia.v3.impl.y.b(IMASDK:132)
01-21 09:12:43.102 6454-6454/ W/System.err: at com.google.ads.interactivemedia.v3.impl.y$1.shouldOverrideUrlLoading(IMASDK:60)
01-21 09:12:43.102 6454-6454/ W/System.err: at com.android.webview.chromium.WebViewContentsClientAdapter.shouldOverrideUrlLoading(WebViewContentsClientAdapter.java:359)
01-21 09:12:43.102 6454-6454/ W/System.err: at org.chromium.android_webview.AwContentsClientBridge.shouldOverrideUrlLoading(AwContentsClientBridge.java:261)
01-21 09:12:43.102 6454-6454/ W/System.err: at android.app.ActivityThread.main(ActivityThread.java:5468)