2

MediaPlayer用来流式传输 mp3 广播电台,它在所有 android 版本上都可以正常工作,除了在 Android 4.0 中它会抛出这个异常

05-28 19:29:57.160: E/MediaPlayer(6854): Unable to to create media player
05-28 19:29:57.164: W/System.err(6854): java.io.IOException: setDataSource failed.: status=0x80000000
05-28 19:29:57.164: W/System.err(6854):     at android.media.MediaPlayer.setDataSource(Native Method)
05-28 19:29:57.164: W/System.err(6854):     at biz.dot.hayatfm.RadioPlayerService$1.run(RadioPlayerService.java:50)
05-28 19:29:57.168: W/System.err(6854):     at java.lang.Thread.run(Thread.java:856)

这是代码

this.mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
this.mediaPlayer.setDataSource( Uri.parse("http://vpr.streamguys.net/vpr96.mp3").toString());
                this.mediaPlayer.prepare();
                this.mediaPlayer.start();
4

1 回答 1

2

IOException您推断该类MediaPlayer使用URL流式传输并且它可以访问它,因此它将抛出一个IOExceptionandroid 4.0 需要互联网许可才能流式传输表单 url 这不是 android 4.0 之前的情况,因此您可以根据需要流式传输音乐没有那个允许。

要解决此问题,请在清单文件中包含此权限

<uses-permission android:name="android.permission.INTERNET" />
于 2012-06-01T18:06:33.633 回答