转载请以链接形式标明出处: 本文出自:103style的博客
《Android开发艺术探索》 学习记录
前面我们通过上面几篇文章分别介绍了相关的IPC方式,这里我们再来回顾下这些IPC方式是怎么实现的。
通过上面的回顾,我们知道每种方法对应的直线方式,下面通过下表来介绍下它们的优缺点以及使用场景:
IPC方式 | 优点 | 缺点 | 适用场景 |
---|---|---|---|
Bundle | 简单易用 | 传输的类型的大小有限制 | 四大组件间的IPC |
文件共享 | 简单易用 | 不合适高并发,无法做到即时通信 | 交换简单的实时性不强的数据 |
AIDL | 功能强大 | 使用较复杂,需要处理线程同步 | 一对多通信且有RPC需求 |
Messenger | 功能一般,支持一对多串行通信和即时通信 | 不支持RPC,不能很好处理高并发,且只支持Bundle支持的数据格式 | 低并发的一对多即时通信 |
ContentProvider | 在数据源访问上功能强大,支持一对多并发数据共享,可通过Call方法扩展其他操作 | 可以理解为受约束的AIDL,主要进行CRUD操作 | 一对多进程间数据共享 |
Socket | 功能强大,可以通过网络传递字节流,支持一对多并发实时通信 | 实现稍有繁琐,不支持直接的RPC | 网络数据交换 |
如果觉得不错的话,请帮忙点个赞呗。
以上