1
SDカード内のすべてのオーディオファイルをスキャンしようとしています。ここにそれを担当するコードの断片があります。しかし、リムーバブルSDカードからではなく、内部ストレージからファイルを返すだけです。AndroidでリムーバブルSDカードのすべてのオーディオファイルをスキャンする
{..
final ArrayList<File> mySongs = findSongs(Environment.getExternalStorageDirectory());
..}
public ArrayList<File> findSongs(File root) {
ArrayList<File> al = new ArrayList<>();
File[] files = root.listFiles();
for (File singleFile : files) {
if (singleFile.isDirectory() && !singleFile.isHidden()) {
al.addAll(findSongs(singleFile));
} else {
if (singleFile.getName().endsWith(".mp3")||singleFile.getName().endsWith(".m4a")||singleFile.getName().endsWith(".wav")) {
al.add(singleFile);
}
}
}
return al;
}
はい、私は、外部記憶装置を読み取るためのアクセス許可を使用しています。 SDカードが装着されています。 –