Android实现多进程方式及注意

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_16247851/article/details/73913463

.Android中实现多进程的方法是在清单文件(AndroidMenifest)中指定android:process属性;
而其中的process的命名有两种方式:

<activity
android:name=".moduel.personal.activity.FeedbackActivity"
android:process=":a"
android:launchMode="singleTop"
android:screenOrientation="portrait"/>
<activity         android:name=".moduel.personal.activity.FeedbackActivity"
android:process=".a"
android:launchMode="singleTop"
android:screenOrientation="portrait"/>

其中”:a”和”.a”所代表的含义是不一样的,:代表的是在当前的进程名前面加上包名,而且这样表达的进程是属于当前进程的私有进程,其他进程的组件不可以跟它到同一个进程里,而不以:开头的命名的进程属于全局进程,其他应用可以通过相同的ID(系统为每个应用分配一个唯一的ID)和拥有相同签名的方式跑到同个进程里。

  • 系统在创建进程的同时分配独立的虚拟机(即代表会多次创建Application)
  • 不同进程中组件不能通过共享内存达到共享数据的目的。
  • 因为不在同一块内存,线程同步机制将会失效。
  • sharepreference数据可能会有误差(sharepreference不允许两个线程同时执行操作,其底层是通过XML文件读写完成)

IPC方式:AIDL,Messenger,Bundle,文件共享,ContentProvider

猜你喜欢

转载自blog.csdn.net/qq_16247851/article/details/73913463
今日推荐