首先使用ContentResolver拿到系统音乐的信息:
ContentResolver contentResolver = getActivity().getContentResolver();
Cursor cursor = contentResolver.query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null, null, null);
while (cursor.moveToNext()){
//拿到系统音乐的歌名,歌手名,路径
String title = cursor.getString(cursor.getColumnIndex(MediaStore.Video.Media.TITLE));
String singer = cursor.getString(cursor.getColumnIndex(MediaStore.Video.Media.DISPLAY_NAME));
String path = cursor.getString(cursor.getColumnIndex(MediaStore.Video.Media.DATA));
MyMusicData myMusicData=new MyMusicData(title,singer,path);
myMusicDatas.add(myMusicData);
}
使用MediaPlayer来进行播放音乐:
mediaPlayer.reset();//mediaPlayer重置
try {
//使用MediaPlayer进行播放音乐 参数1:上下文 参数2:音乐路径
mediaPlayer.setDataSource(getActivity(), Uri.parse(myMusicDatas.get(id).getPath()));
mediaPlayer.prepare();//预准备
mediaPlayer.start();//开始播放
} catch (IOException e) {
e.printStackTrace();
}
全部代码展示:
package com.example.week3.fragment;
import android.content.ContentResolver;
import android.database.Cursor;
import android.media.MediaPlayer;
import android.net.Uri;
import android.os.Bundle;
import android.provider.MediaStore;
import android.support.v4.app.Fragment;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
import android.view.LayoutInflater;
import a