私はAndroidアプリの開発をほぼ終えました。GPS 位置情報と SMS レシーバー クラスを使用します。「HOME」(家)を押すと、まだ動いていることがわかります。ホームボタンが押されたときに GPS リスナーと SMS_RECEIVER を閉じたいと思います。
私はEclipseとWindowsを使用しています。
私はAndroidアプリの開発をほぼ終えました。GPS 位置情報と SMS レシーバー クラスを使用します。「HOME」(家)を押すと、まだ動いていることがわかります。ホームボタンが押されたときに GPS リスナーと SMS_RECEIVER を閉じたいと思います。
私はEclipseとWindowsを使用しています。
ホームボタンを使用して終了すると、アプリは実行されたままになります(私が理解しているホームは、「最小化」ボタンのようなものです)。戻ると完全に閉まります。ホーム ボタンの機能をオーバーライドして実際に終了するには、次のようにします。
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if (event.getAction() == KeyEvent.ACTION_DOWN) {
switch (keyCode) {
case KeyEvent.KEYCODE_HOME:
finish();
return true;
}
}
return super.onKeyDown(keyCode, event);
}
onStop イベントをリッスンし、リスナーをシャットダウンできます。
注: onPause または onDestroy の方が適切なオプションである可能性があります。アクティビティのライフサイクルを読んで、これを行うのに最適なポイントを選択してください。
BroadCast レシーバーを使用する場合 (おそらく別のクラスを使用し、AndroidManifest.xml でレシーバーを宣言します)、Activity のクラス メンバーにすることを検討してください。Activity クラス内で onResume と onPause をオーバーライドし、そこでレシーバーを登録および登録解除します。