我正在尝试播放使用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
答案 0 :(得分:5)
我不认为媒体播放器可以播放播放列表。我认为它只会发挥作用。您必须跟踪播放列表中的曲目并将其传递给媒体播放器。它可能会帮助您查看音乐播放器的Android源代码以及它如何处理它。