私は音楽ファイルを検索しています
proj = new String[] {[...],
MediaStore.Audio.Media.DATA
};
Cursor musiccursor = context.getContentResolver().query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,proj, MediaStore.Audio.Media.IS_MUSIC + "=1", null, null);
[...]
int ixdata = musiccursor.getColumnIndex(MediaStore.Audio.Media.DATA);
[...]
while(musiccursor.moveToNext()) {
[...]
String data = musiccursor.getString(ixdata);
/mnt/sdcard のファイルではすべて問題なく動作しますが、残念ながら /mnt/USB のファイルではデータが空のようです。
さらに悪いことに、メディアプレーヤーは /mnt/sdcard 内のファイルのコンテンツ URI (つまり、content://media/external/audio/media/120) では機能しますが、/mnt/USB 内のファイルのコンテンツ URI では機能しません。 (つまり、content://media/external/audio/media/530)。
ファイルは問題ありません。メディア プレーヤーに /mnt/USB/testfile.mp3 への絶対パスを指定すると、問題なく再生できます。
さらに奇妙なことに、USB ドライブ上のファイルから、アルバム、アーティスト、タイトルなどを問題なく読み取ることができます。
誰かアイデア?
ありがとう