阅读更多 转自: http://galin.blog.sohu.com/170489657.html
AndroidManifest.xml的Service元素


       
               
       


    这里的android:process=":remote",一开始我没有添加的,在同一个程序里使用IPC,即同一个程序作为客户端/服务器端,结果运行mRemoteService = IMyService.Stub.asInterface(service);时提示空指针异常。观察了人家的在不同程序里进行IPC的代码,也是没有这个android:process=":remote"的。后来在官方文档http://androidappdocs.appspot.com/guide/topics/manifest/service-element.html里了解到(留意第二段文字):
android:process
The name of the process where the service is to run. Normally, all components of an application run in the default process created for the application. It has the same name as the application package. The element's process attribute can set a different default for all components. But component can override the default with its own process attribute, allowing you to spread your application across multiple processes.

If the name assigned to this attribute begins with a colon (':'), a new process, private to the application, is created when it's needed and the service runs in that process. If the process name begins with a lowercase character, the service will run in a global process of that name, provided that it has permission to do so. This allows components in different applications to share a process, reducing resource usage.
也就是说android:process=":remote",代表在应用程序里,当需要该service时,会自动创建新的进程。而如果是android:process="remote",没有“:”分号的,则创建全局进程,不同的应用程序共享该进程。

转自: http://blog.csdn.net/fireofstar/article/details/7583047

更多相关文章

  1. 【Android(安卓)系统开发】 Android(安卓)系统启动流程简介
  2. 《Android(安卓)Security Internals》第一章安卓安全模型翻译
  3. android 开源 OCR 项目 及手写识别
  4. android4.3应用程序隐藏状态栏和标题栏
  5. Google Android软件架构
  6. Activity 属性
  7. android基本架构
  8. 什么是Android-Android中文SDK
  9. Android应用程序绑定服务(bindService)的过程

随机推荐

  1. 用 Python 读取巴菲特最近的持仓数据
  2. B站晚会大火的 140 万个理由!
  3. C语言的一些练习以及写一个猜数字游戏
  4. 巧用 Matplotlib 动画,让你的 Python 可
  5. 6、用户身份与文件权限
  6. 昨晚试试 数据行转列,差点翻了车
  7. 秋招拿了7个offer,分享一些反思和经验
  8. Ansible自动化部署服务
  9. 我对JDK15的简单理解
  10. 用 Python可视化神器 Plotly 动态演示全