myc_100 2012-09-27 06:58 采纳率: 10%
浏览 4257
已采纳

如何进入音乐播放列表,然后调用音乐列表程序,播放歌曲

我在写一个Android应用程序,想实现访问音乐播放列表的功能。
在程序中,用户应该可以浏览音乐播放列表,选择出他喜欢的歌曲。
现在想实现的是当用户选中播放列表中的歌曲后,系统怎么连接上这个歌曲,如何把这首歌添加到默认音乐应用程序中,并且作为背景播放。
使用ContentProvider 或mediastore也不知道怎么实现?不知道如何在其他应用程序中访问数据。

  • 写回答

2条回答

  • Jobernowl 2012-09-28 02:31
    关注
                public MusicFile[] readAllMusic(Context context){
            Cursor cursor = context.getContentResolver().query(
                    MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, new String[]{
                            MediaStore.Audio.Media.TITLE,
                            MediaStore.Audio.Media.ARTIST,
                            MediaStore.Audio.Media.ALBUM,
                            MediaStore.Audio.Media.YEAR,
                            MediaStore.Audio.Media.DURATION,
                            MediaStore.Audio.Media.DATA }, null, null,
                    MediaStore.Audio.Media.DEFAULT_SORT_ORDER);
            if(null==cursor){
                return null;
            }
            MusicFile[] array=new MusicFile[cursor.getCount()];
            int i=0;
            while (cursor.moveToNext()) {
            //MusicFile has tile,path....set specified value as follows
      //title=cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.TITLE));
      //path=cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.DATA));
                  array[i]=new MusicFile(cursor);
                  i++;
            }
            return array;
        }
    
        public void play(MusicFile mf,Context context){
            File file = new File(mf.absolutePath);
            final Uri data = Uri.fromFile(file);
            final Intent intent = new Intent(null, data);
            intent.setDataAndType(data, "audio/*");
            context.startActivity(intent);
        }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题