Приложение Android не может читать файлы внешнего хранилища

Я создаю приложение только для личного использования ... тогда это не так важно, уважайте свое время: P

Я хочу сделать приложение, которое читает из базы данных и воспроизводит звуки. Я уже создал базу данных и могу воспроизводить звук из папки res / raw. Тем не менее, есть тысячи файлов для воспроизведения, и некоторые новые будут частью приложения, а другие будут удалены в будущем. Итак, добавление простого файла заставляет меня загружать все приложение (~ 1 ГБ) каждый раз (или, возможно, я ошибаюсь?). Вместо этого я подумал о чтении файла Excel и проигрывании звуков с SD-карты. Но я не могу ... насколько я знаю:

Приложениям не разрешается записывать (удалять, изменять ...) во внешнее хранилище, кроме как в свои специфичные для пакета каталоги.

Я положил файлы в/ Хранение / эмулировать / 0 / Android / данные / my_package_folder / файлы папка. Я прочитал действительно много тем, и ничто не помогло мне.

Environment.MEDIA_MOUNTED.equals(extStorageState) //returns true
Environment.MEDIA_MOUNTED_READ_ONLY.equals(extStorageState) //returns false

Я попробовал несколько способов создания нового файлового объекта или воспроизведения звука с помощью медиаплеера (как я уже говорил, проблем с воспроизведением файлов res / raw нет), ноФайл существует всегда возвращает false или звук не воспроизводится:

String filePath = getExternalFilesDir(null) + "/myfile.mp3"; //returns correct file path
File file = new File(filePath);

ИЛИ ЖЕ

File file = new File(getExternalFilesDir(null).getPath(), "myfile.mp3");

ИЛИ ЖЕ

MediaPlayer mp;
mp = MediaPlayer.create(this, Uri.parse(getExternalFilesDir(null).getPath() + "/myfile.mp3"));

Для minSdkVersion установлено значение 19, поэтому мне не нужна эта строка в Manifest:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

Я включил эту строку, и ничего не изменилось:

<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />

Я также пытался сделать это с другими расширениями файлов. Кроме того, решение отВот не помогло Мой телефон - Samsung Galaxy Grand Prime (SM-G530FZ), Android v. 5.0.2. Помогите, пожалуйста! :)

Ответы на вопрос(4)

Ваш ответ на вопрос