活動+サービスのクラスがあります。
プログラムが実行されるとアクティビティが表示されonCreate
、アクティビティのメソッドでサービスが開始されます。
仮想マシンのホーム ボタンをクリックすると、ホーム画面が表示されるがアクティビティがなくなっている
- この時点で、そのプログラムがどのような状況で一時停止/停止したのだろうか???
- サービスはどうしたの?(まだ走ってる?)
- サービスを使用してアクティビティを前面に出すにはどうすればよいですか?
ありがとうございました...
活動+サービスのクラスがあります。
プログラムが実行されるとアクティビティが表示されonCreate
、アクティビティのメソッドでサービスが開始されます。
仮想マシンのホーム ボタンをクリックすると、ホーム画面が表示されるがアクティビティがなくなっている
ありがとうございました...
あなたの場合、ホームボタンを押すとアクティビティが一時停止します。ホームボタンを押して再度起動すると、再開します。
サービスの場合: サービスの開始方法によって異なります。
startService(intent) でサービスを開始すると、サービスは次の時点まで実行されます。
a) stopService を呼び出して明示的に停止します。
b)アンドロイドはそれを殺します
c) サービス内から selfStop を呼び出す
startService() を呼び出さずに bindService() でサービスを開始すると、サービスは次のようになります。
a)アクティビティが破棄されるまで実行します(一時停止しないため、ホームボタンを押しても実行し続けることを意味します)。これは、unbind()を呼び出す必要があることも意味します。
b)アンドロイドはそれを殺します
c) サービス内から selfStop を呼び出すまで
アクティビティをフォアグラウンドにするには、インテントを呼び出してフラグを設定する必要があります。履歴などから起動されたと思います....ドキュメントを確認する必要があります。
インテント.addFlag(インテント.FLAG_ACTIVITY_REORDER_TO_FRONT); <- 私は、またはこれだと思います -> FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY
以下のアクティビティ フローを参照してください。