@vladocc

Какие есть не стоковые библиотеки для проигрывания музыки на Android?

Пользовался при разработке своего плеера стоковой библиотекой MediaPlayer для Android и вот, после n-ного количества смена DataSource'а, она решила мне сказать нет и кинула IllegalStateException на prepare. Чтобы добавить понимания, скажу, что это был цикл, в котором менялся лишь путь до файла и следовательно исключение должно было бы выпасть на первой итерации, но 6 итерация она точно проходит успешно. На какой она валится, выяснить не удалось.
В итоге, проще найти другую библиотеку, чем починить эту, т.к. отказаться от данного цикла у меня нет возможности.

Код:
public class Song {

    static MediaPlayer play = new MediaPlayer();
    static ArrayList<Song> Songs = new ArrayList<>();
    String name;
    String path;
    int Duration;
    int Number;

    Song(String songName, String songPath){
        name = songName;
        path = songPath;
        try {
            play.setDataSource(songPath);
        } catch (IOException e) {
            e.printStackTrace();
        }
        try {
            play.prepare();
        } catch (IOException e) {
            e.printStackTrace();
        }
        Duration = play.getDuration();
        play.reset();
        Number = Songs.size();
        Songs.add(this);
    }

Другой класс ищет все песни на устройстве и при нахождении вызывается данный конструктор.
Быть может способ не самый удачный, но других я не знаю. С MediaMetadataRetriever все крашится еще быстрее.
  • Вопрос задан
  • 402 просмотра
Пригласить эксперта
Ответы на вопрос 1
onepavel
@onepavel
Консультация и разработка мобильных приложений
Да не, либа нормальная, дело в руках. А по поводу сторонних, уже поднимался неоднократно вопрос
BASS, FMOD, SDL
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
Sports.ru Москва
До 175 000 руб.
KUPIBILET.RU Санкт-Петербург
от 100 000 руб.
Frogogo Москва
от 70 000 руб.
10 дек. 2018, в 09:04
300 руб./в час
10 дек. 2018, в 08:44
10000 руб./за проект
10 дек. 2018, в 08:00
1000 руб./в час