0

意図的にアクティビティをフォアグラウンドに戻すためのランチャー(ホームのアイコン)と履歴(最近の履歴)の違いは何ですか?

アクティビティは、 FLAG_ACTIVITY_NEW_TASKフラグを持つインテントによって開始されます。そのため、アクティビティがフォアグラウンドになり、onNewIntent() が呼び出されます。

ただし、アクティビティをバックグラウンドからフォアグラウンドに戻すと、いくつかの違いがあります。


関数呼び出しシーケンス:

  • 最近の履歴: onNewIntent() -> onRestart() -> onStart() -> onResume()

  • ランチャー(ホームのアイコン): onRestart() -> onStart() -> onResume()

ランチャーはonNewIntent()関数を呼び出しませんでした。

mssunderstanding とは何ですか?

4

1 に答える 1

0

正しいメソッドを見た場合、 LauncherstartActivity を のみで呼び出し、 、Intent.FLAG_ACTIVITY_NEW_TASKおよび で呼び出しRecentsPanelViewます。したがって、おそらくこのフラグの 1 つがその動作の原因です。Intent.FLAG_ACTIVITY_LAUNCHED_FROM_HISTORYIntent.FLAG_ACTIVITY_TASK_ON_HOMEIntent.FLAG_ACTIVITY_NEW_TASK

于 2013-06-17T13:08:55.003 に答える