【发布时间】:2018-01-15 07:59:47
【问题描述】:
我一直在构建简单的 mp3 播放器,一切顺利,从存储设备中获取所有 mp3 文件的代码运行良好。
Uri media = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
我的问题是我只需要从 sdcard kalid 文件夹加载 mp3 文件。我试过这段代码,但它没有从 kalid 文件夹加载 mp3 文件。
File path = new File(Environment.getExternalStorageDirectory() + "/kalid");
Uri media = Uri.fromFile(path);
我也厌倦了这段代码
File path = new File(Environment.getExternalStorageDirectory() + "/kalid");
Uri media = MediaStore.Audio.Media.getContentUriForPath(String.valueOf(path));
我认为没有人理解我的问题,这里是完整的源代码 ContentResolver 解析器 = context.getContentResolver();
Uri media = MediaStore.Audio.Media.getContentUriForPath("Environment.getExternalStorageDirectory().getPath()+ kalid+");
String selection = MediaStore.Audio.Media.IS_MUSIC + "!=0";
Cursor cursor = resolver.query(media, PROJECTION, selection, null, null);
if (cursor == null || cursor.getCount() == 0) {
Log.d(TAG, "Music List Empty");
return false;
}
mMusicList.clear(); // clear
int count = cursor.getCount();
for (int i = 0; i != count; ++i) {
if (!cursor.moveToNext()) {
break;
}
//Log.d(TAG, cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.TITLE)));
// Add to ArrayList
mMusicList.add(new Music(
cursor.getLong(cursor.getColumnIndex(MediaStore.Audio.Media._ID)),
cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.DATA)),
cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.TITLE)),
cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.ALBUM)),
cursor.getString(cursor.getColumnIndex(MediaStore.Audio.Media.ARTIST))
));
}
cursor.close();
【问题讨论】:
-
确实如此。该代码什么也不做。那只会从路径中生成一个 uri。
-
@greenapps 给我指路谢谢
-
不用了,谢谢。请联系代码编写服务。本网站旨在帮助您解决问题。请描述它们。
标签: android