我正在使用音频流在设备上播放 MP3 文件,并且在 ICS 出现之前没有任何问题。然后我认为这可能是格式支持问题,所以我尝试了使用以下代码的 OGG 文件:
MediaPlayer mmp= MediaPlayer.create(context,
Uri.parse("http://vorbis.com/music/Epoq-Lepidoptera.ogg"));
mmp.start();
这适用于早期的操作系统版本,但在 ICS 上失败。我也尝试过setDataSource(this, uri)
使用 onPreparesListener atc 创建媒体播放器,但仍然出现相同的错误:
04-08 09:52:12.459: D/MediaPlayer(541): 无法在客户端打开文件,正在尝试服务器端 04-08 09:52:12.489: E/MediaPlayer(541): 无法创建媒体播放器 04-08 09:52:12.529:D/MediaPlayer(541):创建失败: 04-08 09:52:12.529: D/MediaPlayer(541): java.io.IOException: setDataSource failed.: status=0x80000000 04-08 09:52:12.529:D/MediaPlayer(541):在 android.media.MediaPlayer._setDataSource(本机方法) 04-08 09:52:12.529: D/MediaPlayer(541): 在 android.media.MediaPlayer.setDataSource(MediaPlayer.java:844) 04-08 09:52:12.529: D/MediaPlayer(541): 在 android.media.MediaPlayer.setDataSource(MediaPlayer.java:806) 04-08 09:52:12.529: D/MediaPlayer(541): 在 android.media.MediaPlayer.setDataSource(MediaPlayer.java:761) 04-08 09:52:12.529: D/MediaPlayer(541): 在 android.media.MediaPlayer.create(MediaPlayer.java:695) 04-08 09:52:12.529: D/MediaPlayer(541): 在 android.media.MediaPlayer.create(MediaPlayer.java:676)
所以我的问题是如何在 ICS 上使用 MediaPlayer 流式传输音频文件?有没有人有工作代码,或者可能必须有一些特定的文件格式和编码?但它很糟糕,新的操作系统版本不能向后兼容......