0

質問は、Windows8でナビゲーションが要求された後もWebviewのiframe内のYouTubeビデオが再生され続けるのと似ています

Phonegapを使用してAndroidアプリを作成しています。Childbrowserプラグインを使用し、サーバー上のphpファイル内にあるYoutube iframeコードを使用して、Youtubeビデオを表示することができました。

ただし、ユーザーが戻るボタンを押すと、アプリケーション画面が表示され、ビデオの音が聞こえます。

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)

どんな助けでも大歓迎です!! 本当にこれにこだわった。

4

1 に答える 1

1

私も同じ問題を抱えていました。私が使用した回避策は、onBackPressed()をオーバーライドし、ビデオを再生していたのと同じWebビューに「about:blank」をロードすることです。私にとって完璧に動作します!試してみてください。幸運を :-)

-Yogesh

于 2013-02-04T07:09:03.243 に答える