从任何其他应用程序启动活动

时间:2013-12-06 14:35:52

标签: android

我正在设计一个由两个活动组成的应用程序。第一个总是运行,并且在发生某些事情时被要求触发第二个。这适用于运行活动的标准代码:

Intent myIntent = new Intent(this, allarme.class);
myIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(myIntent); 

但是,如果我正在使用其他应用程序(即gmail),则不会启动allarme.class中的活动, 而它在家中或屏幕锁定时都能很好地工作。 我确信第一个活动仍在运行,只是第二个动作没有被触发。

我是否应该更改清单文件中的任何内容以解决此问题?

3 个答案:

答案 0 :(得分:0)

即使您正在使用其他应用或手机已锁定,您也可以创建始终在后台运行的后台服务。这是链接以获得更多帮助: http://developer.android.com/training/run-background-service/create-service.html

答案 1 :(得分:0)

我不清楚你想要什么。 但我想你想同时开展两项活动,对吗? 一个活动在后台运行,一个活动更新UI。

始终牢记Android架构只允许当时运行一个活动。如果要从异步任务传递数据,可以从该类调用该方法,并让处理程序“最近”类更新UI。

答案 2 :(得分:0)

谢谢大家,我想我解决了。 基本上,我发现当使用基本的startActivity重新启动时,已经运行的活动可以成为焦点。然后我可以立即切换到新活动而不会失去焦点。