导航后,iframe中的YouTube视频继续播放 - Android和Phonegap

时间:2013-01-30 17:46:21

标签: android cordova jquery-mobile youtube childbrowser

问题类似于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>
  • Apache Cordova(Phonegap) - 2.3.0 Jquery Mobile - 1.2 Android - Jelly bean(4.2)

任何帮助表示赞赏!!真的坚持这个。

1 个答案:

答案 0 :(得分:1)

我也有同样的问题。我使用的解决方法是覆盖onBackPressed()并在播放视频的同一webview中加载“about:blank”。对我来说很完美!试一试吧。祝你好运: - )

-Yogesh