android中Manifest File的Service类中定义进程的目的是什么?

时间:2013-10-22 06:00:34

标签: java android

 <service
            android:name="com.example.a.MyService"
            android:process=".MyService"
            android:enabled="true" />

我想在这里了解流程的目的。因为,我的应用程序与此过程无关。

请任何人解释一下。

先谢谢。

3 个答案:

答案 0 :(得分:0)

来自Android文档http://developer.android.com/guide/topics/manifest/service-element.html

  

机器人:过程

     

运行服务的进程的名称。通常,应用程序的所有组件都在为应用程序创建的默认进程中运行。它与应用程序包具有相同的名称。元素的process属性可以为所有组件设置不同的默认值。但是组件可以使用自己的流程属性覆盖默认值,允许您跨多个流程分布应用程序。

     

如果分配给此属性的名称以冒号(':')开头,则在需要时创建一个专用于应用程序的新进程,并在该进程中运行该服务。如果进程名称以小写字符开头,则服务将在该名称的全局进程中运行,前提是它具有此权限。这允许不同应用程序中的组件共享进程,从而减少资源使用。

答案 1 :(得分:0)

默认情况下,服务将在应用程序的主进程中运行。您可以指定它在不同的进程下运行。阅读有关属性here的信息。

答案 2 :(得分:0)

这意味着您的服务将在名为MyService的流程中运行。根据Android文档

A process running a service is ranked higher than a process with background activities

因此,如果Android在您的服务运行时随时需要内存,那么它不太可能被操作系统杀死。请阅读here了解更多信息。