通讯都需要bindservice启动,serviceconnection 进行接口暴露。
本地服务:
1. 通过中间类Binder 获取service引用来调用。
2. 广播。
远程服务:
1.通过Messenger中间类进行相互通讯。
a. 被调用者需要创建有Handler构造器的Messenger对象。
b. 调用者需要创建有IBinder 构造器的Messenger对象。通过Messenger的send方式进行通讯。
2.通过AIDL进行相互通讯。
a. 写aidl文件xxx,定义要通讯的接口。
b. service 中提供aidl定义接口xxx.stub 的实现类。
c. acivity 获取xxx接口引用
3. 广播
本文详细介绍了Android中本地服务和远程服务的通信方式,包括使用Binder、Messenger、AIDL等技术实现不同组件间的交互。对于远程服务,重点讲解了通过Messenger和AIDL进行跨进程通信(IPC)的方法。
633

被折叠的 条评论
为什么被折叠?



