Как получить внешний путь SDCard в android программировании? - PullRequest
0 голосов
/ 19 марта 2020

Я хочу воспроизводить аудиофайлы с карты памяти.

Как получить внешний путь SD-карты в android программировании?

К сожалению, каждая модель телефона android имеет свой путь. например:

Galaxy S3 android 4.4: карта памяти существует по пути: "/ mnt / extSdCard /"

Honor 7 c android 8: карта памяти существует в путь: "/ mnt / ext_sdcard /"

Я не смог найти путь в Nokia 5 с android 9 и Xiaomi Redmi 3s с android 6.

 try {

File root = Environment.getExternalStorageDirectory();
String audioPath = root.getAbsolutePath() + "/telavatquran/naba.mp3";

            FileInputStream fis = new FileInputStream(audioPath);

            fd = fis.getFD();

            if (fd != null) {
                player.setDataSource(fd);
                player.prepare();
                player.start();

            } else if (new File("/mnt/sdcard/external_sd/").exists()) {
                seekUpdation();
                player.setDataSource("/mnt/sdcard/external_sd/telavatquran/naba.mp3/");
                player.prepare();
                player.start();

            } else if (new File("/storage/extSdCard/").exists()) {
                seekUpdation();
                player.setDataSource("/storage/extSdCard/telavatquran/naba.mp3/");
                player.prepare();
                player.start();

            } else if (new File("/mnt/extSdCard/").exists()) {
                seekUpdation();
                player.setDataSource("/mnt/extSdCard/telavatquran/naba.mp3/");
                player.prepare();
                player.start();

            } else if (new File("/mnt/sdcard/external_sd/").exists()) {
                seekUpdation();
                player.setDataSource("/mnt/sdcard/external_sd/telavatquran/naba.mp3/");
                player.prepare();
                player.start();

            } else if (new File("storage/sdcard1/").exists()) {
                seekUpdation();
                player.setDataSource("storage/sdcard1/telavatquran/naba.mp3/");
                player.prepare();
                player.start();

            } else if (new File("/mnt/ext_sdcard/").exists()) {
                seekUpdation();
                player.setDataSource("/mnt/ext_sdcard/telavatquran/naba.mp3/");
                player.prepare();
                player.start();

            }
} catch (Exception e) {

                }

Буду признателен за сотрудничество.

...