У меня есть несколько сырых музыкальных файлов, которые я хотел бы воспроизвести для одного MediaPlayer. После многих попыток я смог заставить MediaPlayer переключаться между песнями. Однако один из моих сырых файлов продолжает возвращать исключение FileNotFoundException. Это bizzare для меня, потому что я импортировал его в свою сырую папку, как и все другие файлы, которые работают. Я также получаю доступ к нему точно так же, как и другие файлы.Доступ к сырым файлам для MediaPlayer
Вот код, где я доступ к файлу (Это называется victory_music):
AssetFileDescriptor afd = CPU.rawToFile(Results.this, R.raw.victory_music);
И вот код, где я доступ к другим файлам (где он на самом деле работает):
AssetFileDescriptor afd = CPU.rawToFile(Results.this, R.raw.defeat_music);
И
mPlayer = MediaPlayer.create(MainMenu.this, R.raw.battle_music);
Вот ошибка я получаю:
05-30 16:20:24.439: E/AndroidRuntime(3151): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.my.app/com.my.app.MainMenu}: android.content.res.Resources$NotFoundException: File res/raw/you_win from drawable resource ID #0x7f040003
Я пробовал очистить/уничтожить файл, повторно импортировать его и даже использовать совершенно другой файл и имя, но кажется, что всякий раз, когда я добавляю новый файл, теперь он больше не работает ,
Любая помощь была бы принята с благодарностью!
Итак, я выяснил, в чем проблема, хотя я не совсем уверен, почему у меня возникла проблема. Кажется, что я получу эту ошибку для любого файла в raw, который меньше 1 МБ. Мне удалось обойти его, зациклив мои звуковые файлы, пока они не превысят 1 МБ. Тем не менее, я пытаюсь реализовать звуковые эффекты с помощью SoundPool. Эти звуковые эффекты, естественно, очень малы. Все они меньше 1 МБ, и все они дают мне ту же ошибку, что и раньше. –