我不明白为什么这个光标在这个特定的设备上是空的。但适用于所有其他安卓设备。
SD卡上有多个音频文件,Stock MediaPlayer可以找到并播放这些歌曲。

Cursor c = managedQuery(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, new String[] { "distinct " + MediaStore.Audio.Media.ALBUM, MediaStore.Audio.Media.ARTIST, MediaStore.Audio.Media.ALBUM_KEY, MediaStore.Audio.Media.ALBUM_ID},
                null,
                null,
                MediaStore.Audio.Media.ARTIST);

Ambling Book Player(我猜他们只是在文件夹中循环并执行他们自己的ID3解析)和股票Android音乐播放器都能找到音乐,但我无法从MediaStore获得任何信息。不存在“.nomedia”文件,我已尝试将新MP3文件插入新文件夹。

最佳答案

我也遇到过类似的情况,并发现了几个答案,但没有一个能令人满意。
媒体扫描程序响应系统启动的广播意图操作运行,
这是在开机时发生的。所以首先要检查的是重启。
据我所知,扫描器也会在
设置>管理应用程序>媒体存储>清除数据-并从存储中重新填充媒体存储。我试过了,但没有效果。当然,我不能保证安全,也不会在非开发设备上这样做。
您也可以手动

mContext.sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse
        ("file://" + Environment.getExternalStorageDirectory())));

并在观看意图行动的广播时张贴某种通知媒体扫描器结束。
如果您自己导入媒体,请检查MediaScannerConnection以启动扫描仪。
哦,如果你打算使用谷歌Nexus等设备,你需要处理内部的内容。

09-27 17:32