播放时是否每秒调用一次OnBufferingUpdate事件?

西蒙·西姆城

我目前正在为Android编写一个应用程序,其中包括媒体播放器。当我想向用户显示播放器的当前状态时,我想保持当前播放的时间和缓冲进度更新。

在实现接口之后MediaPlayer.OnBufferingUpdate,我意识到即使缓冲完成后,也每秒都会调用一次该接口然后,它报告100每秒的百分比

我现在的问题是:

是否在某处指定了此行为?我可以安全地使用该MediaPlayer.OnBufferingUpdate事件来更新我的播放时间,还是应该自己实现一个计时器来更新该时间?我是否可以使用另一个事件,该事件在播放时每秒调用一次(未在PAUSE或之后触发FINISH)?

我在这里找到了这个问题,链接-Android:达到100%后未调用onBufferingUpdate() -@ ThaMe90指向文档-但我不明白这里应该是“错误”的地方...

克尔兹斯托夫·斯克尔兹内克(Krzysztof Skrzynecki)

好吧,由于文档的缘故,这种方法被称为“在缓冲中更新状态”,因此当达到100%时,缓冲状态就不再需要更新了(这很有意义,对吗?)。

不幸的是,有一种疾病消耗了为Android平台开发软件的过程-OEM会根据需要修改此平台。我很确定这就是这些例子之一。

我测试了在不同设备上调用此方法的情况,这是我观察到的结果:

  • 在所有三星设备(经过大量修改的操作系统)达到100%之后,将调用onBufferingUpdate方法
  • 在所有Moto G上达到100%后,不再调用onBufferingUpdate方法,该方法已对Android进行了一些修改

好吧,它看起来像个错误,已经成为三星设备上的一个功能;)

这不是一个错误,这是一个功能

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章