Android картинка в картинке появляется поверх черного квадрата

У меня странная проблема с Android Picture-in-picture.

Я управляю мобильным приложением, которое использует функцию «Картинка в картинке» с Exoplayer и некоторыми фрагментами. Активность имеет такие флаги:

            android:name=".activities.main.MainActivity"
            android:configChanges="keyboardHidden|orientation|screenSize|smallestScreenSize|screenLayout"
            android:windowSoftInputMode="adjustNothing"
            android:launchMode="singleTask"
            android:resizeableActivity="true"
            android:hardwareAccelerated="true"
            android:supportsPictureInPicture="true"
            android:screenOrientation="portrait">

Также есть некоторые фрагменты, два из которых используют Exoplayer и один из них может войти в PiP.

При входе в PiP - за фрагментом плеера появляется черный квадрат, иногда с кадром от второго плеера (но этот фрагмент к этому моменту закрывается). Фрагмент (который показан в PiP) имеет проигрыватель с параметрами макета MATCH_PARENT, без каких-либо отступов или полей.

Экзоплеер 2.11.0.

Конструктор параметров PiP имеет соотношение 16/9.

В целом PiP работает нормально, с паузой/воспроизведением.

Вот как это выглядит: Пример изображения

Интересно, как избавиться от этого квадрата? Любые советы или предложения будут оценены.


person Yevhen Ivanets    schedule 29.09.2020    source источник


Ответы (1)


Вы можете использовать enterPictureInPictureMode(); в Activity или getActivity().enterPictureInPictureMode(); внутри фрагмента

person Simran Chhabra    schedule 29.09.2020
comment
Привет! Спасибо, но это уже работает. Я вызываю этот метод в действии, и он показывает окно «картинка в картинке». Но иногда он появляется с черным квадратом на заднем плане, от которого я хочу избавиться - вот в чем проблема. - person Yevhen Ivanets; 29.09.2020