Android MediaPlayer警告:应该已经设置了字幕控制器

PFo*_*ort 19 android android-mediaplayer

我的Nexus 4升级到4.4,现在每当MediaPlayer发出声音时,我都会收到警告:

Should have subtitle controller already set
Run Code Online (Sandbox Code Playgroud)

而且在打电话给mp.release()我时,我现在得到警告

mediaplayer went away with unhandled events
Run Code Online (Sandbox Code Playgroud)

使用4.3的Nexus 7上的相同应用程序不会显示这些警告.

Gan*_*esh 10

Android 4.4 kitkat,有一个新功能支持WebVTT,HLS其中引入了一些变化MediaPlayer.(参考:Kitkat亮点 - 隐藏式字幕)

根据您对错误的描述,看起来实际的播放器引擎没有setSubtitleAnchorVideoView这里那样调用.这导致来自此处的另一个方法的错误消息,该方法prepare在调用侦听器之前作为状态转换的一部分被调用.

PS:你的播放器是自定义播放器还是作为Android发行版的一部分预先捆绑的标准播放器?你能分享更多的日志吗?


小智 5

mp.reset();
mp.release();
Run Code Online (Sandbox Code Playgroud)

这应该可以帮助你摆脱第二次警告