1.有几种IPC方式
1.1 使用Bundle
Activity,Service,Receiver 3大组件都支持Intent中传递Bundle;
Bundle已经实现了Parcelable接口。
bundle.putSerializable(“person”, person);
intent.putExtras(bundle);
1.2 使用文件
共同读写一个文件,达到传递数据的目的。此方式只适用于同步要求不高的场景。
1.3 使用Messenger(底层实现机制为AIDL)
串行方式处理客户端请求,不适合大量并发的情况,而且客户端无法调用服务的方法
1.4 使用AIDL (Binder)
Android中经典的IPC方式
1.5 使用ContentProvider (底层实现为Binder)
数据库共享
ContentProvider提供的6个方法,只有onCreate运行在主线程,其他5个方法均运行在Binder线程池中。
1.6 使用Socket
通过网络不仅可以达到进程间通信,更多用于不同设备间通信。