我正在创建一个在VideoView
内播放的视频列表。
我想抓住“抱歉,此视频无法播放”错误,然后转到下一个视频。视频切换在onCompletionListener
内完成。
我已经从here获得了onErrorListener
的代码,但我找不到如何触发“视频已完成”事件。
有什么想法吗?
答案 0 :(得分:1)
您可以在onErrorListener中执行相同的操作,就像在onCompletionListener中一样 在onCompletion你把视频设置为下一个(不知何故,我不知道你的实现)然后在错误中使用相同的代码(最有可能重构为另一个函数)。 EG:
onError(....)
if(error = watever error you need)
functionNextVideo()
请注意以上是伪代码。
但除了onCompletionListener之外,除非视频按预期完成,否则不会触发。
答案 1 :(得分:1)
在公共接口OnErrorListener的源代码中找到:
@return True if the method handled the error, false if it didn't.
* Returning false, or not having an OnErrorListener at all, will
* cause the OnCompletionListener to be called.
*/
boolean onError(MediaPlayer mp, int what, int extra);
所以如果你返回false或者你没有处理回调,那么将调用onCompletionListener。