2012-05-30 3 views
1

Я использую код в документации MediaPlayer;Как я могу играть в потоки soundcloud на Android?

String url = "http://........"; // your URL here 
MediaPlayer mediaPlayer = new MediaPlayer(); 
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); 
mediaPlayer.setDataSource(url); 
mediaPlayer.prepare(); // might take long! (for buffering, etc) 
mediaPlayer.start(); 

Путь к звуковомузыкальному mp3 - это что-то вроде этого;

https://api.soundcloud.com/tracks/41262720/stream?consumer_key=XXXXXX 

В строке обслуживания у меня есть эта ошибка;

prepare failed. status=0x1 

Я тестирую его с другим источником, и он отлично работает;

http://www.colorado.edu/AmStudies/lewis/Design/blue.mp3 

В чем проблема с источниками soundcloud? Нужна ли мне дополнительная настройка для медиаплеера?

Примечание: я использую эмулятор с 2.2 SDK

+1

Попробуйте использовать 'OnPreparedListener()' - вызов 'start' сразу после' prepare' - это не очень хорошая идея для сетевого потока. – Squonk

+0

Функция prepare() не является asyn. Поэтому он блокирует программу, пока она не будет готова. Существует другая функция подготовки, называемая prepareAsync(). Я использовал их оба, но имел ту же ошибку. – syloc

+0

Извините, я думал о 'prepareAsync()' - моей ошибке. Я вижу, что ты все-таки нашел ответ. – Squonk

ответ

2

Медиа-плеер (по крайней мере, более старые версии) имеет проблемы с HTTPS URLs. Вам нужно будет вручную разрешить URL-адрес (выдать запрос GET и проверить перенаправление), а затем дать результат MediaPlayer. Есть много других проблем с MediaPlayer, хотя, это не просто, чтобы заставить его работать.

+0

Я проверю направленный URL @jan. Можете ли вы посоветовать мне другую библиотеку, кроме MediaPlayer? – syloc

+0

Вы когда-нибудь заставляли это работать? я пытаюсь сделать то же самое, и я не могу понять это – Splitusa

+0

@syloc: нет встроенной альтернативы - вы можете написать свой собственный плеер, но некоторые функции декодирования недоступны на Java, а только более поздние версии поддержки Android программного mp3-декодирования –

Смежные вопросы