Androidは携帯電話のすべての音楽アドレスを取得します
//
public static LinkedHashMap getAllMusicFile(Context context) {
LinkedHashMap map = new LinkedHashMap<>();
ContentResolver mContentResolver;
mContentResolver = context.getContentResolver();
Cursor c = null;
try {
c = mContentResolver.query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null, null,
MediaStore.Audio.Media.DEFAULT_SORT_ORDER);
MusicDatas musicDatas = null;
while (c.moveToNext()) {
String path = c.getString(c.getColumnIndexOrThrow(MediaStore.Audio.Media.DATA));//
int musicId = c.getInt(c.getColumnIndexOrThrow(MediaStore.Audio.Media._ID));// id
String name = c.getString(c.getColumnIndexOrThrow(MediaStore.Audio.Media.DISPLAY_NAME)); //
String album = c.getString(c.getColumnIndexOrThrow(MediaStore.Audio.Media.ALBUM)); //
String artist = c.getString(c.getColumnIndexOrThrow(MediaStore.Audio.Media.ARTIST)); //
long size = c.getLong(c.getColumnIndexOrThrow(MediaStore.Audio.Media.SIZE));//
int duration = c.getInt(c.getColumnIndexOrThrow(MediaStore.Audio.Media.DURATION));//
musicDatas = new MusicDatas(path, musicId, name, album, artist, size, duration);
map.put(musicId, musicDatas);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
if (c != null) {
c.close();
}
}
return map;
}
携帯電話のシステムアルバムの選択した画像の返信先を見てください.https://blog.csdn.net/TGWhuli/article/details/97752731