Android进程通信方式

Android系统中进程间通信有以下几种方式:

1、Bundle
2、文件共享
3、AIDL
4、Messenger
5、ContentPrivider
6、Socket

名称 优点 缺点 适用场景
Bundel 简单易用 只能传输Bundle支持的数据类型 四大组件间的进程通信
文件共享 简单易用 不适合高并发场景,并且无法做到进程间的即时通信 无并发访问情形,交换简单的数据实时性不高的场景
AIDL 功能强大,支持一对多并发通信,支持实时通信 使用复杂,需要处理好线程同步 一对多通信且有PRC需求
Messenger 功能强大,支持一对多串行通信,支持实时通信 不能很好处理高并发情形,不支持PRC,数据通过Message进行传输,因为只能传输Bundle支持的数据类型 低并发的一对多即时通信,无PRC需求,或着无须要返回结果的PRC需求
ContentPrivider 在数据源访问方面功能强大,支持一对多并发数据共享,可通过Call方法扩展其他操作 可以理解为受约束的AIDL,主要提供数据源的CRUD操作 一对多的进程间的数据共享
Socket 功能强大,可以通过网络传输字节流,支持一对多并发实时通信 实现细节稍微有点繁琐,不支持直接RPC 网络数据交换

你可能感兴趣的:(Android进程通信方式)