我是Android新手。现在我只是尝试一些包含服务的例子。在其中一个示例中,服务是作为单独的后台进程创建的。使用类似的东西
android:process=":background"
他们说现在服务将具有单独的流程环境,因此它与启动它的一个(应用程序)是分开的。当我杀死父进程ieApplication时,服务也被杀死了。这是正常的行为吗?因为我从那篇文章中理解的是服务不会受到影响,因为它是不同的过程环境。如果我错了,请纠正我。提前致谢
更新 即使我看到相同的行为,如果我使用:远程。
答案 0 :(得分:1)
只是Android文档的副本:
如果分配给此属性的名称以冒号(':')开头,则a 在需要时创建应用程序专用的新进程。 如果进程名称以小写字符开头,则为全局字符 创建该名称的过程。可以共享全局流程 其他应用程序,减少资源使用
http://developer.android.com/guide/topics/manifest/application-element.html#proc
答案 1 :(得分:1)
Afaik,有两种类型的服务,
1)背景:在您的应用程序的同一过程中运行。
2)远程:如果我们想让这个服务在远程进程中运行(而不是其.apk的标准服务),我们可以在其manifest标签中使用android:process指定一个:,
我们还可以使用其他字符串,然后是背景和远程。 这是服务lifecycle