我正在通过MediaPlayer
运行流。当缓冲开始时,抛出代码701。当缓冲结束时,抛出代码702。
所有代码均可在此link找到。
然而,MediaPlayer.OnInfoListener
首先抛出代码703,这是我在任何地方都找不到的。这是代码和调试输出。
mPlayer.setOnInfoListener(new MediaPlayer.OnInfoListener() {
@Override
public boolean onInfo(MediaPlayer mediaPlayer, int i, int i2) {
Log.d(TAG, "MediaPlayer.OnInfoListener: " + i);
return false;
}
});
logcat的:
12-29 13:40:54.995: DEBUG/StreamingService(13811): MediaPlayer.OnInfoListener: 703
12-29 13:40:55.000: DEBUG/StreamingService(13811): MediaPlayer.OnInfoListener: 701
12-29 13:41:09.055: DEBUG/StreamingService(13811): MediaPlayer.OnInfoListener: 702
12-29 13:41:10.770: DEBUG/StreamingService(13811): MediaPlayer.OnCompletionListener
通过MediaPlayer.OnInfoListener
投放的代码703 是什么?
答案 0 :(得分:14)
代码703应为MEDIA_INFO_NETWORK_BANDWIDTH
:“最近的带宽”(source)。
这不是一个真正的错误。它是有关媒体框架中发生的事情的信息的状态代码。查看AwesomePlayer
源代码,我看到如果流数据缓存运行不足,它会发送MEDIA_INFO_NETWORK_BANDWIDTH
,如果您突然禁用互联网连接,最终会发生这种情况。然后它将暂停播放并开始尝试缓冲更多数据,这由MEDIA_INFO_BUFFERING_START
消息(代码701)指示。