我有一组活动,并使用以下代码将主活动带入“活动”状态:
Intent i = getBaseContext().getPackageManager()
.getLaunchIntentForPackage(getBaseContext().getPackageName());
i.putExtra("clearCache", true);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);
问题在于当我尝试检索"clearCache"额外数据时,调用"getIntent().getExtras()"会返回null。
我的理解是因为我要启动的活动已经在堆栈上了,并且我设置了 "Intent.FLAG_ACTIVITY_CLEAR_TOP" 标志,所以返回的Intent将是原始Intent。
我如何在我要启动的活动中访问调用的Intent?
onNewIntent()
方法并从那里处理新的意图解决了我的问题。 - Ryan