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