Android开发艺术探索读书笔记(第二章)

本文介绍了Android中多进程的启动方式及注意事项,包括私有进程与共享UID进程的区别,并探讨了多进程环境下序列化方案的选择及Binder在进程间通信中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

IPC机制
Android中的多进程模式
一、开启多进程
给四大组件在AndroidManifest.xml中指定android:process属性:
1)android:process = “:remote”–私有进程,其他应用的组件不能和它跑在一个进程之中。
2)android:process = “xxx.xxx.xxx:remote”–其他应用可通过ShareUID与其跑在同一个进程,需要两个应用具有相同的ShareUID并且签名相同才可以。
开启多进程就代表为每一个进程分配了一个虚拟机,不同虚拟机访问同一个类的对象就会产生不用的副本。所以多进程带来的问题:
1、静态成员和单例模式失效
2、线程同步机制失效。
3、SharedPreferences可靠性下降
4、Application多次创建。
============================================
二、序列化方案:Serializable和Parcelable
Parcelable效率更高;但要将对象存储到磁盘中或者通过网络传输建议用Serializable。

Binder实现了IBinder接口,从Framework层理解:Binder是ServiceManager连接各种Manager和ManagerService的桥梁。
从应用层理解:Binder是客户端和服务端进行通信的媒介。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值