我有主要活动+服务。服务正在调用第二个活动。- 如果 main 在前台,一切都很好。二是在main上面打开。- 如果我通过“返回”按钮关闭主目录,那么第二个会在桌面上方打开。这个很酷。- 但是,当我通过切换到桌面(按“主页”按钮)关闭主程序时,第二个活动会以不可见的方式打开,只有在切换到应用程序的任务时才能看到它。
如果应用程序在后台,你能帮我把我的任务移到前台吗?我尝试将第二个活动作为新任务,但这无济于事。
我有主要活动+服务。服务正在调用第二个活动。- 如果 main 在前台,一切都很好。二是在main上面打开。- 如果我通过“返回”按钮关闭主目录,那么第二个会在桌面上方打开。这个很酷。- 但是,当我通过切换到桌面(按“主页”按钮)关闭主程序时,第二个活动会以不可见的方式打开,只有在切换到应用程序的任务时才能看到它。
如果应用程序在后台,你能帮我把我的任务移到前台吗?我尝试将第二个活动作为新任务,但这无济于事。
将任务中的顶级活动标记为 singleTask,而不是向此活动发送任何意图,以便所有任务都将被带到前台而不重新创建此活动
听起来很像我遇到的问题。看看: http ://groups.google.com/group/android-developers/browse_thread/thread/183340108cb847fd
您可以尝试设置任务的亲和力,例如:
<activity android:name="activity_two" android:taskAffinity=""></activity>
在您的 AndroidManifest.xml 中(同时使活动成为自己的任务,就像您提到的那样)。
如果您不希望其他活动作为单独的任务显示在最近的历史列表中,您还可以添加:
android:excludeFromRecents="true"
到清单中的活动。
此问题中提到的完全相同的问题。
使用以下代码片段解决了它。 i.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT)
; 这将活动带回了前面。
Intent i=new Intent(ApplicationStatus.this,NotifyActivity.class);
//i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);//optional
i.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);//will cause it to come to foreground
i.putExtra("ID_TimeLeft",String.valueOf(TimeLeft));
startActivity(i);