Видео Exoplayer Переход от одной активности к другой без остановки воспроизведения

Есть ли у кого-нибудь предложения, как реализовать этот сценарий с помощью exoplayer или простого медиаплеера. У меня есть требования, например, видео воспроизводится в списке, и при нажатии на это видео оно должно быть перемещено в новую полноэкранную активность с плавным переходом и без остановки воспроизведения.

Пожалуйста, прокомментируйте, если у вас есть рабочий код или какие-либо предложения. Спасибо


person alok    schedule 05.08.2018    source источник


Ответы (1)


Это не легко сделать. По сути, у вас есть SimpleExoPlayer, который загружает видео и воспроизводит его, и у вас есть представление, в котором отображается видео, например TextureView.

Ключевым моментом здесь является не создание нового объекта проигрывателя, а совместное использование проигрывателя между экранами, между которыми вы переходите. Что вам нужно сделать, так это отсоединить проигрыватель от вашего представления, получить доступ к проигрывателю на другом экране и прикрепить его к представлению на втором экране.

Управление ссылками на игроков в данном случае не самое простое. Простым способом будет использование карты, на которой будут храниться все ваши инициализированные плееры, и вы сможете получить доступ к нужному вам плееру по ключу, который может быть URL вашего видео.

При переходе на другой экран НЕ ОТПУСКАЙТЕ плеер, ТОЛЬКО ОТСОЕДИНЯЙТЕ его от текущего вида. Не ставьте видео на паузу и не делайте player.seekTo(), ваш плеер не потеряет свое состояние.

И не спрашивайте код, иначе очень злые и серьезные люди будут минусовать вас.

person Sermilion    schedule 10.08.2018