MediaPlayer Prepare Не удалось воспроизвести с удаленного URL-адреса через потоковую передачу HTTP - PullRequest
1 голос
/ 27 октября 2011

Я хочу воспроизвести mp3-файл, который размещен удаленно. Когда я делаю путь, показанный в этой ссылке http://developer.android.com/guide/topics/media/mediaplayer.html, я получаю ошибку:

java.io.IOException: Prepare failed.: status=0x1

После поиска в Интернете я нашел альтернативу в этой ссылке http://blog.pocketjourney.com/2008/04/04/tutorial-custom-media-streaming-for-androids-mediaplayer/,, которая тоже не очень хорошо работает. Он загружает аудиофайл с помощью потоковой передачи и создает временный файл .dat. Каждый раз при загрузке другого приращения файла MediaPlayer необходимо останавливать, чтобы установить извлеченные новые данные для MediaPlayer. Процесс воспроизводит звук, но он проходит через небольшие паузы в пути. Можно делать эти паузы, потому что еще недостаточно загруженных данных, но не стоит останавливать проигрыватель при каждой загрузке новых данных.

Итак, мой вопрос: есть ли другой способ воспроизвести удаленный аудиофайл? Почему возникает ошибка «подготовить не удалось»? Я заметил, что это происходит с некоторыми файлами mp3, но не с другими. Есть ли какой-нибудь искаженный mp3 для класса MediaPlayer (и как это исправить)?

Пример: http://1cd.palco.fm/a/c/4/5/bandainovation-so-hoje.mp3. Вы получаете ошибку с этим mp3, но вы можете воспроизводить ее с другими плеерами (например, Banshee или Windows Media Player).

Большое спасибо заранее

1 Ответ

0 голосов
/ 19 января 2012

Я думаю, что вам может потребоваться добавить специальное разрешение для вашего файла AndroidManifest.xml, предоставив приложению доступ к Интернету.

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

Кроме того, убедитесь, что у вас есть подключение для передачи данных (я проверил его на моем Samsung Galaxy Ace, то же самое исключение произойдет, если беспроводная связь не включена).

...