2012-02-23 80 views
6

我是新来的Android。现在我只是尝试一些包含服务的示例。在其中一个示例中,服务是作为一个单独的后台进程创建的。使用这样的事情Android - 保持服务活着,即使父进程被杀死

android:process=":background" 

他们说,现在的服务将是具有独立的进程环境,因此它从正在启动它的一个(应用)分开。当我杀死父进程即应用程序时,该服务也正在被杀死。这是否正常行为?因为我从该文章中了解到的是Service不会受到影响,因为它是不同的流程环境。如果我错了,请纠正我。在此先感谢

更新: 即使我看到相同的行为,如果我使用:远程。

+0

如果用户强行停止你的应用程序设置,我认为服务也将被杀死.. – AAnkit 2012-02-23 06:32:20

+0

@Ankit谢谢,但是:remote&:background打算做什么。 – Allwyn 2012-02-23 06:36:47

回答

1

只需从Android文件副本:

如果分配给该属性的名称以冒号开始(“:”),一个 新工艺,专用的应用程序,在需要时创建。 如果进程名称以小写字符开头,那么会创建该名称的全局进程 。一个全球性的过程可以与其他 应用程序共享,减少资源的使用

http://developer.android.com/guide/topics/manifest/application-element.html#proc

1

据我所知,有两种类型的服务,

1)背景:这在同一进程中运行应用。

2)远程:如果我们想使这个服务运行在远程过程(而不是标准之一的.apk文件),我们可以使用Android:过程在其清单标记来指定一个:,

我们也可以使用其他字符串,然后背景和远程。 这里是服务lifecycle