我试图从一个进程启动一个Intent过滤器来运行另一个进程的活动。
这很简单:
protected void startIntent()
{
Intent i = new Intent(target);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
context.startActivity(i);
}
现在正如我的主题所说,我愿意将目标活动作为乘法实例运行。
该活动的每个实例都应该执行某些操作,然后它具有finish();
所以现在我连续4次致电startIntent();
。
我希望在同一目标活动的堆栈中有4个并行实例(每个活动在完成一些操作后都会完成。使用finish();)。
问题是它无法正常工作。我尝试了一些LoadTest,当我连续调用方法3(或以下)时,它工作正常,但是当我调用startIntent()4次以上时,该活动的某些实例永远不会被启动(例如,第二个意图在被叫的订单)。
这是我得到的一些警告:
WARN / ActivityManager(966):对HistoryRecord的重复完成请求{4367ed60 {com.test.targetActivity / com.idan.external.callingActivity}}
顺便说一句:在目标活动中,我在清单中设置了标志:
android:launchMode="standard" (also tried without it, and it didnt work).
有什么想法吗?