Android 播放时是否每秒调用OnBufferingUpdate事件?
我目前正在为Android编写一个应用程序,包括一个媒体播放器。因为我想向用户显示播放器的当前状态,所以我想保持当前播放的时间和缓冲进度的更新 在实现了MediaPlayer.OnBufferingUpdate接口之后,我意识到,即使在缓冲完成之后,也会每秒调用这个接口。然后,它每秒报告Android 播放时是否每秒调用OnBufferingUpdate事件?,android,android-mediaplayer,Android,Android Mediaplayer,我目前正在为Android编写一个应用程序,包括一个媒体播放器。因为我想向用户显示播放器的当前状态,所以我想保持当前播放的时间和缓冲进度的更新 在实现了MediaPlayer.OnBufferingUpdate接口之后,我意识到,即使在缓冲完成之后,也会每秒调用这个接口。然后,它每秒报告100的百分比 我现在的问题是: 这种行为是在什么地方指定的吗?我是否可以安全地使用MediaPlayer.OnBufferingUpdate事件来更新我的播放时间,或者我是否应该实现自己的计时器来更新播放时间?
100
的百分比
我现在的问题是:
这种行为是在什么地方指定的吗?我是否可以安全地使用MediaPlayer.OnBufferingUpdate
事件来更新我的播放时间,或者我是否应该实现自己的计时器来更新播放时间?我是否可以使用另一个事件,即播放时每秒调用一次(在PAUSE
或FINISH
之后未触发)
我在这里发现了这个问题,LINK-@ThaMe90指向文档的地方-但我不知道这里应该是什么“bug”…好吧,因为,这个方法是“调用以更新缓冲中的状态”,所以当你达到100%时,缓冲状态不应该再更新了(这很有意义,我说的对吗?)
不幸的是,有一种疾病消耗了Android平台软件的开发过程——原始设备制造商根据自己的需要修改了这个平台。我敢肯定这就是其中的一个例子
我已经在不同的设备上测试了这种方法,下面是我观察的结果:
- 在所有三星设备上达到100%后调用onBufferingUpdate方法
- 在所有Moto G上达到100%后,不再调用onBufferingUpdate方法,这稍微修改了Android
- 在所有三星设备上达到100%后调用onBufferingUpdate方法
- 在所有Moto G上达到100%后,不再调用onBufferingUpdate方法,这稍微修改了Android
好的,我至少现在知道,当它是本地资源()时不会调用它……好的,我至少现在知道,当它是本地资源()时不会调用它。。。