Pull to refresh

Comments 6

Спасибо вам, занимаюсь этой же задачей, очень помогло!
Вопрос — а как организовать обновление прогресса для проигрывания в Activity?
С ходу пришел такой вариант — пробрасывать нужные значени (длину трека, текущую позицию) в полях PlayerServiceBinder, а в Activity запускать/останавливать обновления UI с нужной частотой.

В PlaybackState есть и длина трека и текущая позиция. Посмотрите на то, как это реализовано в UniversalMusicPlayer. UniversalMusicPlayer — это пример от Google. Там реализовано то же самое, что и в статье. Просто UniversalMusicPlayer очень сложен для понимания с нуля, поэтому я и написал упрощенный вариант.
В UI метод updateProgress дергается с некоторой периодичностью. Метод забирает из PlaybackState последнюю известную позицию и время, когда State был обновлен, и высчитывает дельту. Соответственно в сервисе по каждому "чиху" state с позицией обновляется (в методе updatePlaybackState).
Если позицию писать в PlaybackState, то она будет везде, а если самому пробрасывать данные, то позиция будет только в вашей Activity.

Не совсем по адресу и не совсем ко времени вопрос конечно. Но можно ли как-то сделать приложение для прослушивания музыки, которое будет игнорировать все уведомления от прочих приложений? Раздражаются всякие вацапы и прочие телеграммы, когда музыку слушаешь, особенно с колонки, а не с наушников. Пусть бы только звонки вклинивались, а остальное всё игнорировать.
Sign up to leave a comment.

Articles