В моем приложении есть фоновая музыка, воспроизводимая в цикле, с использованием MediaPlayer
. Я останавливаю музыку в onPause
Activity, чтобы она не продолжала воспроизводиться, если пользователь покидает приложение, нажав клавишу «Домой», или если он получает телефонный звонок и т. Д.
Однако , Теперь мне нужно, чтобы музыка продолжала плавно воспроизводиться, когда пользователь переходит к определенным другим действиям. То есть, если они нажимают кнопку A, я добавляю действие A в стек, и музыка должна продолжаться; однако, если они нажимают кнопку B, я добавляю действие B в стек, и музыка должна остановиться. Точно так же музыка должна продолжаться, если они нажмут на телефоне кнопку «Назад», чтобы вернуться с действия A к исходному действию.
I ' Мы пробовали снова запустить MediaPlayer
в onResume
действия A, но во время перехода есть довольно заметный пробел в музыке.
На данный момент у меня ] onPause
запускает задержку в полсекунды перед затуханием музыки еще на четверть секунды; это можно отменить из другого действия onResume
. Это означает, что музыка останавливается достаточно быстро, когда пользователь выходит из приложения; однако, когда пользователь переключает действия, я все равно получаю небольшую паузу в музыке на некоторых более медленных устройствах. Более того, это похоже на действительно грязный хакер.
Есть ли способ лучше?
На данный момент у меня есть onPause
, запускающий задержку в полсекунды перед тем, как затухать музыку еще на четверть секунды; это можно отменить из другого действия onResume
. Это означает, что музыка останавливается достаточно быстро, когда пользователь выходит из приложения; однако, когда пользователь переключает действия, я все равно получаю небольшую паузу в музыке на некоторых более медленных устройствах. Более того, это похоже на действительно грязный хакер.
Есть ли способ лучше?
На данный момент у меня есть onPause
, запускающий задержку в полсекунды перед тем, как затухать музыку еще на четверть секунды; это можно отменить из другого действия onResume
. Это означает, что музыка останавливается достаточно быстро, когда пользователь выходит из приложения; однако, когда пользователь переключает действия, я все равно получаю небольшую паузу в музыке на некоторых более медленных устройствах. Более того, это похоже на действительно грязный хакер.
Есть ли способ лучше?
однако, когда пользователь переключает действия, я все равно получаю небольшую паузу в музыке на некоторых более медленных устройствах. Более того, это похоже на действительно грязный хакер.Есть ли способ лучше?
однако, когда пользователь переключает действия, я все равно получаю небольшую паузу в музыке на некоторых более медленных устройствах. Более того, это похоже на действительно грязный хакер.Есть ли способ лучше?
[Изменить: если это поможет, MediaPlayer
содержится в статическом классе, к которому я могу получить доступ из любого места приложения.]