2012-01-05 11 views
0

私はAndroidの戻るボタンのアクションを監視し、次のスクリプトがある - 私は物理ホームボタンを押したときにも、アプリを閉じたいと思いAndroid Phonegap - ホームボタンを検出しますか?

document.addEventListener("backbutton", backKeyDown, true); 


function backKeyDown() { 


if($.mobile.activePage.is('#homepage')){ 
    setTimeout(function() {navigator.app.exitApp();}, 100); 

} 
else { 
    setTimeout(function() {$.mobile.changePage("#homepage");}, 100); 

} 

}

を - 誰もがこれを検出する方法を知っているん?ハードウェアのHomeキーイベントをキャプチャ乾杯 ポール

答えて

0

は悪いアプローチであるとAndroidは、あなたがそれを行うことを可能にすることは決してありません。アプリを閉じるために、アンドロイドのフレームワークは自動的にあなたのアプリをバックグラウンドに送りますので、Homeボタンを押したイベントであなたのアプリを閉じる気にする必要はありません。

2

あなたはそれを行うことはできませんが、代わりに、よりhere

EDIT参照onPause()方法でアプリを殺すことができる:ユーザがアクティビティを離れるたびonPauseでそれは、あなたのアプリが殺されてしまいますこう

をあなたがアンドロイドでやりたいことをやり遂げる方法があるのか​​どうかは分かりません。また、お勧めしません!

一定の時間間隔でアクティビティからアプリケーションインスタンスにメッセージを送信する複雑なブロードキャストメッセージングシステムを作成することができます。また、アプリケーションインスタンスで何秒もメッセージを受け取らない場合は、

これは、onPauseが呼び出されるまでx秒でメッセージを送信する基本アクティビティクラスを使用して実行できます。この動作を使用できる他のすべてのアクティビティでそのアクティビティを拡張することができます。

これは、そこにある最適なオプションではなく、実装によってはバッテリの寿命を消費するので、このようなことを実装する前に必要なことを本当に確かめる必要があります。

+1

これは、ユーザーが画面をオフに切り替えたときにもトリガーされます – alexislg

0

私はAdil ..に同意しますが、本当にアプリを終了したい場合や、PhoneGapの「一時停止」イベントに同じリスナー/機能を追加すると、おそらくこのトリックが行われます。

関連する問題