我有发射器A(活动A1)和应用程序B(活动B1,B2都是单声道)。
A1 - > B1 - > B2 - > A1 - > B2。
然而onNewIntent没有调用活动B2,B2确实调用了直接onResume而不是onNewIntent。
启动器A:活动A1:
Intent app_B = getPackageManager().getLaunchIntentForPackage(PACKAGE_B);
startActivity(app_B);
我想:
A1 -> B1 -> B2 -> A1 -> B2.onNewIntent(Intent intent)
但不是:
A1 -> B1 -> B2 -> A1 -> B2.onResume()
有人可以帮助我吗?谢谢。 (在Android 4.4.2上调试)
答案 0 :(得分:2)
onNewIntent(Intent intent)
仅在创建活动之前调用一次。之后它不会调用直到您销毁并重新创建活动...... 请看文档,它会更清楚你, http://developer.android.com/reference/android/app/Activity.html#onNewIntent(android.content.Intent)
答案 1 :(得分:1)
对于要调用的onNewIntent(Intent intent),您必须在清单中将活动的 launchmode 声明为android:launchMode="singleTop"
或android:launchMode="singleTask"
http://www.intridea.com/blog/2011/6/16/android-understanding-activity-launchmode