一、android 提供了几种进程通信(IPC)方式:
1、共享内存(只能用于共享,传递得用Binder)
实现方式: 序列化到内存,如paracelable和serializable序列化到共享内存(有其中一个进程提供)
2、文件共享(只能用于共享,传递得用Binder)
实现方式:序列化到外部存储,如paracelable和serializable序列化到磁盘
3、Binder(linux虚拟设备内存)
实现方式: AIDL,Messager,ContentProvider,Broacast等
Messager:
Messenger是基于AIDL实现的,服务端(被动方)提供一个Service来处理客户端(主动方)连接,维护一个Handler来创建Messenger,在onBind时返回Messenger的binder。
双方用Messenger来发送数据,用Handler来处理数据。Messenger处理数据依靠Handler,所以是串行的,也就是说,Handler接到多个message时,就要排队依次处理。
二、区别: