質問は、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)
どんな助けでも大歓迎です!! 本当にこれにこだわった。