Воспроизвести список воспроизведения с MediaPlayer - PullRequest
11 голосов
/ 08 января 2010

Я пытаюсь воспроизвести список воспроизведения, полученный с помощью провайдера MediaStore. Однако, когда я пытаюсь воспроизвести список воспроизведения, ничего не происходит. Может ли MediaPlayer воспроизводить список воспроизведения (файл m3u), и нужно ли мне устанавливать первую дорожку для воспроизведения?

Это мой тестовый код в методе onCreate ():

        Uri uri = MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI;
    if(uri == null) {
        Log.e("Uri = null");
    }
    String[] projection = new String[] { MediaStore.Audio.Playlists._ID, MediaStore.Audio.Playlists.NAME, MediaStore.Audio.Playlists.DATA };
    Cursor c = managedQuery(uri, projection, null, null, null);
    if(c == null) {
        Toast.makeText(getApplicationContext(), R.string.alarm_tone_picker_error, Toast.LENGTH_LONG).show();
        return;
    }
    if(!c.moveToFirst()) {
        c.close();
        Toast.makeText(getApplicationContext(), R.string.alarm_tone_picker_no_music, Toast.LENGTH_LONG).show();
        return;
    }
    c.moveToFirst();
    try {
        MediaPlayer player = new MediaPlayer();
        player.setDataSource(c.getString(2));
        player.start();
    } catch(Exception e) {
        e.printStackTrace();
    }

Я включил каждый поток томов.

Спасибо,

Kaloer

1 Ответ

5 голосов
/ 28 марта 2010

Я не думаю, что медиаплеер может воспроизводить плейлист. Я думаю, что это будет играть только трек. Вам нужно будет отслеживать треки из списка воспроизведения и передавать их в медиаплеер. Это может помочь вам проверить исходный код Android для музыкального проигрывателя и узнать, как он с ним работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...