MediaPlayer BroadcastReceiver RuntimeException - PullRequest
0 голосов
/ 08 апреля 2011

У меня небольшая проблема с объектом MediaPlayer в Android.В частности, я пытаюсь воспроизвести файл m4a с URL-адреса.На первый взгляд кажется, что он работает нормально, в том числе правильно воспроизводит аудиофайл.В моем logcat, однако, я получаю постоянный поток исключений во время выполнения.В частности: «BroadcastReceiver пытается вернуть результат во время неупорядоченной трансляции»

Я запутался в этом, поскольку я никогда не устанавливал широковещательный приемник где-либо в своем коде.Мой полный исходный код выглядит следующим образом:

public class homeActivity extends Activity {
    private MediaPlayer player;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        player = new MediaPlayer();
        try {
            player.setDataSource("http://www.promoshuffle.com/fantrailTest/sample.m4a");
            player.prepare();
        } catch (IllegalArgumentException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IllegalStateException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        player.start();
    }
}

Для справки, я отлаживаю на Motorolla Atrix, и, как я уже говорил выше, звук действительно воспроизводится правильно.Если у кого-то есть мысли о том, что может вызвать это исключение, я был бы очень признателен!Заранее спасибо.

Автар

1 Ответ

0 голосов
/ 08 апреля 2011

Если ошибка не в вашем коде, то, возможно, вам не о чем беспокоиться.

Сказав это, попробуйте использовать prepareAysnc () вместо prepare ().

Вам потребуется реализовать MediaPlayer.OnPreparedListener и вызвать player.start () в методе onPrepared ().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...