Android 使用多个实例失败
我正在尝试从一个进程启动一个意图过滤器,以运行另一个进程的活动 这很简单:Android 使用多个实例失败,android,Android,我正在尝试从一个进程启动一个意图过滤器,以运行另一个进程的活动 这很简单: 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);
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()代码>
现在我调用startinent()连续编码>4次
我希望在同一目标活动的堆栈中有4个并行实例(每个活动在执行一些操作后将完成。with finish();)
问题是它不能正常工作。我尝试了一些LoadTest,当我在一行中调用该方法3次(或以下)时,效果很好,但当我调用StartEnt()4次以上时,该活动的某些实例从未启动(例如,按照调用顺序的第二个意图)
这是我得到的一些警告:
WARN/ActivityManager(966):历史记录{4367ed60{com.test.targetActivity/com.idan.external.callingActivity}的重复完成请求
顺便说一句:在我在清单中设置的目标活动中,标志:
android:launchMode="standard" (also tried without it, and it didnt work).
有什么想法吗?不幸的是,我没有答案,但你的问题确实有点不同寻常。你能告诉我们更多关于你的应用程序的用途吗?同时启动4个活动实例似乎是完成任务的一种特殊方式,很可能有更好的解决方案。我同意Dave的观点。你在每个需要自己活动的活动中做什么?可能是android强制关闭了一些活动,或者由于线程问题而导致了一些奇怪的事情。Dave,Falmari:我的目标活动的目的是接收来自外部服务器的消息,并激活其中的另一个活动。所以如果我收到4条信息。。我需要为每个实例使用来自服务器的不同消息运行目标活动4次。它们是否需要同时运行,或者可以逐个处理每条消息?当我使用startActivity(..)时,它是一个同时运行的命令,不是吗?