Страницы

Поиск по вопросам

пятница, 24 января 2020 г.

Возможно ли из аудиоплеера сделать интернет радио плеер?

#java #android #json #mediaplayer #exoplayer


Есть библиотека на github (аудиоплеер) который воспроизводит музыку находящуюся на
устройстве. Возможно ли переделать этот плеер таким образом, чтобы он строил такой
же список из объектов - (есть уже готовый JSON, парсинг данных из него в список, и
проигрывание этих объектов через плеер ExoPlayer в своём приложении).

Библиотека github: X-Music-Player-Pro

Сам вопрос в следующем: Как, что и где менять нужно в этой библиотеке, чтоб приложение
не брало музыку с устройства, а загружало "список станций" из этого самого JSON файла..
В общем, заменить это самое место в коде, где музыка с устройства забирается.

P.S: в моём приложении, JSON файл лежит в папке /assets, парсится оттуда, создается
списком как нужно. То есть нужно просто изменить код в библиотеке этого плеера, чтобы
брал нужные данные вместо музыки с устройства. Заранее благодарю, если покажите с чего
нужно начать, и что менять. 
    


Ответы

Ответ 1



Библиотека сильно завязана на ContentProvider и структуре системного сервиса поставки информации о медиа ресурсах MediaStore.Audio.Media (C одной стороны очень хорошо). Чтобы сильно не править исходники, можно сделать следующее: 1) Cоздать свой ContentProvider, который будет дублировать функционал сервиса MediaStore.Audio.Media (клон, c такими же таблицами и названиями полей). Касательно таблиц и названия полей, можно найти тут: https://developer.android.com/reference/android/provider/MediaStore.Audio.html 2) После в библиотеке X-Music-Player-Pro все вызовы типа: new CursorLoader(getContext(), musicUri , null, selection, null, order); заменить параметр musicUri, указав путь к вашему созданному ContentProvider (клон сервиса MediaStore.Audio.Media***). 3) В итоге вы сможете спокойно модифицировать список воспроизводимых данных.

Комментариев нет:

Отправить комментарий