From 253ea78679376bed4c29cfde04d05feab6a62d21 Mon Sep 17 00:00:00 2001 From: andrewlewis Date: Thu, 21 Feb 2019 11:08:11 +0000 Subject: [PATCH] Register the overlay view as non-obstructing Currently IMA determines that the overlay is obstructing, even if it's empty. Register it as friendly, which means we're assuming that anything the apps puts in it is necessary for playback. PiperOrigin-RevId: 234963065 --- .../com/google/android/exoplayer2/ui/PlayerView.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerView.java b/library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerView.java index fcd281f312..93461c1b24 100644 --- a/library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerView.java +++ b/library/ui/src/main/java/com/google/android/exoplayer2/ui/PlayerView.java @@ -70,6 +70,7 @@ import com.google.android.exoplayer2.video.VideoListener; import java.lang.annotation.Documented; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; +import java.util.ArrayList; import java.util.List; /** @@ -1116,7 +1117,14 @@ public class PlayerView extends FrameLayout implements AdsLoader.AdViewProvider @Override public View[] getAdOverlayViews() { - return controller != null ? new View[] {controller} : new View[0]; + ArrayList overlayViews = new ArrayList<>(); + if (overlayFrameLayout != null) { + overlayViews.add(overlayFrameLayout); + } + if (controller != null) { + overlayViews.add(controller); + } + return overlayViews.toArray(new View[0]); } // Internal methods.