android系统有一个数据库表会把系统中的所有多媒体文件信息读入,开机的时候会自动读取,也可以模拟发广播让系统扫描。
1.拿到一个ContentResolver
ContentResolver resolver = context.getContentResolver();
2.查询数据库表,返回一个cursor
1)视频类型:
cursor=resolver.query(Video.Media.EXTERNAL_CONTENT_URI,
new String[]{"_data"} , null, null, "_display_name");2)图片类型
cursor=resolver.query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
new String[]{"_data"} , null, null, "_display_name");3)音乐类型
cursor=resolver.query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,
new String[]{"_data"} , null, null, "_display_name");3.拿到文件路径
while(cursor.moveToNext()){
String filePath = cursor.getString(0);