开发者社区> 问答> 正文

使用MediaPlayer播放播放列表

我正在尝试播放使用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();
    }

我打开了每个音量流。

谢谢,

卡洛尔

展开
收起
Puppet 2020-01-25 13:08:47 1377 0
1 条回答
写回答
取消 提交回答
  • 我认为媒体播放器无法播放播放列表。我认为这只会发挥作用。您将必须跟踪播放列表中的曲目,并将其传递给媒体播放器。它可能会帮助您检查音乐播放器的android源代码及其处理方式。

    2020-01-25 13:08:59
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载