我在堆栈中的下列活动:
A , B , C, D
我要重新启动的B为了得到这个堆栈:
A , B'
其中B”是一种新型B实例(不老接收onNewIntent回调,我该怎么办呢?
顺便说一句,我使用
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
启动B活性时,但这种方式onNewIntent被调用,而不是开始一个新的实例
我在堆栈中的下列活动:
A , B , C, D
我要重新启动的B为了得到这个堆栈:
A , B'
其中B”是一种新型B实例(不老接收onNewIntent回调,我该怎么办呢?
顺便说一句,我使用
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
启动B活性时,但这种方式onNewIntent被调用,而不是开始一个新的实例
使用Android:noHistory =在特定的活动清单文件真实clear.Hope这可能会解决您的问题。
在这里,当你B中使用此代码的带你上的活动B.按后退按钮将其带你A.
Intent fromDtoB = new Intent(this,B.class);
fromDtoB.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(fromDtoB);
FLAG_ACTIVITY_CLEAR_TASK:如果)传递给Context.startActivity(一个Intent设置,该标志将导致将与活动相关的任何现有任务的活动开始之前被清除。
FLAG_ACTIVITY_CLEAR_TOP:如果设置,以及正在启动的活动在目前的任务已经运行,然后,而不是推出该活动的一个新的实例,都在它上面的其他活动的将被关闭,该意图将交付给(现在在上面)老年活动作为一个新的意图。