Android:关于声明文件中android:process属性说明

Android:关于声明文件中android:process属性说明html

 

Android的帮助文档中咱们能够了解到,通常状况下一个服务没有本身独立的进程,它通常是做为一个线程运行于它所在的应用的进程中。可是也有例外,Android声明文件中的android:process属性却能够为任意组件包括应用指定进程,换句话说,经过在声明文件中设置android:process属性,咱们可让组件(例如Activity, Service等)和应用(Application)建立并运行于咱们指定的进程中。下面是相关资料和笔者翻译。android

 

Android:关于声明文件中android:process属性说明

          若是咱们须要让一个服务在一个远端进程中运行(而不是标准的它所在的apk的进程中运行),咱们能够在声明文件中这个服务的标签中经过android:process属性为其指定一个进程。web

          注意:这里选择”remote”这个名字是随意主观的,你能用其余名字来让这个服务在另外的进程中运行。冒号’:’这个前缀将把这个名字附加到你的包所运行的标准进程名字的后面做为新的进程名称。url

例如:一个应用的包名为com.aoyousatuo.example, 则本例中服务将运行的新进程的名称为com.aoyousatuo.example:remote.(注意,若是声明文件中的组件或者应用没有指定这个属性则默认应用和其组件将相应运行在以其包名命名的进程中).spa

Android:关于声明文件中android:process属性说明

android:process线程

        服务所在进程的名字。一般,一个应用的全部组件都运行在系统为这个应用所建立的默认进程中。这个默认进程是用这个应用的包名来命名的。翻译

        标签的process属性能够设置成和全部组件都不一样的默认值。可是这些组件能够经过设置本身的process值来覆写这个默认值,这样可让你的应用跨多进程运行。orm

        若是被设置的进程名是以一个冒号开头的,则这个新的进程对于这个应用来讲是私有的,当它被须要或者这个服务须要在新进程中运行的时候,这个新进程将会被建立。若是这个进程的名字是以小写字符开头的,则这个服务将运行在一个以这个名字命名的全局的进程中,固然前提是它有相应的权限。这将容许在不一样应用中的各类组件能够共享一个进程,从而减小资源的占用。htm

        例如一个应用运行在进程com.aoyousatuo.example中,android:process属性设置为com.rabbit.man,则新的进程名字为com.rabbit.run.blog

相关文章
相关标签/搜索