目前我有意向工作;但是,我遇到了一些问题。
问题是,我有两个应用程序,A 和 B。B 的午餐模式是 android:launchMode="singleTop"。
现在,我想将一个意图从 A 传递到 B,例如“sdcard/Android”(目录路径)。之后,A 将完成,B 将被创建/恢复/onNewintent。第一次,B 会收到一个意图字符串“sdcard/Android”,这正是我想要的。
然后我按下启动器的主页按钮并再次打开A,然后将一个新数据“sdcard/Music”传递给B。但是,问题发生了,B不会得到字符串“sdcard/Music”,而是, B 的意图数据仍然是“sdcard/Android”。
我预计A第二次将数据传递给B时,会在B中调用onNewintent方法。有什么错误吗?如何在第二次将正确的数据传递给 B?
@Override
public void onCreate(Bundle savedInstanceState) {
onNewIntent(getIntent());
}
@Override
public void onNewIntent(Intent intent)
{
Log.i("TAG", intent.getStringExtra("path"));
}
我知道我应该覆盖 onNewIntent。第一次,B 会进入 onCreate 方法。第二次,我希望它进入 onNewIntent 方法;但是,它进入了 onResumed 方法..!