我正在使用Webview,播放不同的html5视频(内部标记和Youtube视频)。
关闭Webview时,我尝试加载空白页面+隐藏视图+暂停webview。 Webview似乎正确关闭,视频停止播放。
问题在于Galaxy S4 + S2,再次打开Webview并播放另一个视频时。新视频播放后立即暂停。当我再次按“播放”时,视频会再次自动暂停。这将发生在我将尝试加载的每个视频(Youtube和内部),直到我将杀死我的应用程序。杀死我的应用后,一切都会正常工作。 是否有可能第一个视频/视频未终止,因此每个新视频都会自动暂停,以防止两个视频同时播放?
TNX!
Yaniv
答案 0 :(得分:3)
经过几天的努力,我找到了解决方案。看来,当关闭Webview时,Mediaplay可能没有焦点,这使他无法暂停/解雇。这会阻止所有其他与Mediaplayers一起浏览的Webview(每次尝试播放时自动暂停,无法恢复)。
添加此代码时:
@Override
protected void onPause() {
super.onPause();
((AudioManager)getSystemService(
Context.AUDIO_SERVICE)).requestAudioFocus(
new OnAudioFocusChangeListener() {
@Override
public void onAudioFocusChange(int focusChange) {}
}, AudioManager.STREAM_MUSIC,
AudioManager.AUDIOFOCUS_GAIN_TRANSIENT);
}
问题彻底解决了。媒体播放器被解雇/暂停(不确定哪个,必须检查),新的网络视图与新的媒体播放器可以获得焦点和正常播放。
希望它可以帮助其他人解决这个问题..