问题类似于Windows 8上提出的YouTube video in an iframe in Webview continues to play after navigation
我正在使用Phonegap创建一个Android应用程序。 我能够使用Childbrowser插件和帮助Youtube iframe代码显示Youtube视频,该代码存在于我服务器上的php文件中。
但是,如果用户点击后退按钮,则会显示应用程序屏幕,您可以听到视频的声音。
调用childbrowser的代码如下:
$('#videobutton').attr('onclick', 'javascript:window.plugins.childBrowser.showWebPage("http://example.com/sundeep/video.php?trailer='+trailer+'", { showLocationBar: false });');
我知道要关闭子浏览器,您需要输入以下代码:
window.plugins.childBrowser.onClose();
但我不知道上面的代码放在哪里。
解决方法 我甚至试过一种解决方法,使用childbrowser打开一个包含iframe代码的本地页面(video.html),如下所示:
$('#videobutton').attr('onclick', 'javascript:window.plugins.childBrowser.showWebPage("file:///android_asset/www/video.html", { showLocationBar: false });');
并使用window.localStorage.setItem我能够传递和显示视频。我有以下代码,理论上应解决原始问题,但不起作用:
<script type="text/javascript" charset="utf-8">
// Call onDeviceReady when Cordova is loaded.
//
// At this point, the document has loaded but cordova-2.3.0.js has not.
// When Cordova is loaded and talking with the native device,
// it will call the event `deviceready`.
//
function onLoad() {
document.addEventListener("deviceready", onDeviceReady, false);
}
// Cordova is loaded and it is now safe to call Cordova methods
//
function onDeviceReady() {
// Register the event listener
document.addEventListener("backbutton", onBackKeyDown, false);
}
// Handle the back button
//
function onBackKeyDown() {
window.plugins.childBrowser.onClose();
}
</script>
任何帮助表示赞赏!!真的坚持这个。
答案 0 :(得分:1)
我也有同样的问题。我使用的解决方法是覆盖onBackPressed()并在播放视频的同一webview中加载“about:blank”。对我来说很完美!试一试吧。祝你好运: - )
-Yogesh