戻るボタンを押すと、アプリケーションが破棄された状態ではなく、停止した状態になります。
Androidドキュメントでは、次のように述べています。
...すべてのアクティビティに、BACKが押されたときに破棄される動作があるわけではありません。ユーザーが音楽アプリケーションで音楽の再生を開始してから[戻る]を押すと、アプリケーションは通常の戻る動作を無効にして、プレーヤーのアクティビティが破棄されるのを防ぎ、アクティビティが表示されなくなっても音楽の再生を続行します。
この機能を自分のアプリケーションに複製するにはどうすればよいですか?
私は3つの可能性があるに違いないと思います...
戻るボタンの押下をキャプチャし(以下のように)、ホームボタンが呼び出すメソッドを呼び出します。
@Override public boolean onKeyDown(int keyCode, KeyEvent event) { if ((keyCode == KeyEvent.KEYCODE_BACK)) { Log.d(this.getClass().getName(), "back button pressed"); } return super.onKeyDown(keyCode, event); }
戻るボタンの押下をキャプチャしてから、ホームボタンの押下を偽装します。
戻るボタンの押下をキャプチャしてから、ホーム画面のアクティビティを開始し、アプリケーションのアクティビティを効果的に停止状態にします。
編集: 私はサービスについて知っていて、この問題が関連しているアプリケーションでサービスを使用しています。この質問は、具体的には、戻るボタンを押したときにアクティビティを破棄された状態ではなく、停止した状態にすることに関するものです。