一.首先来看回调机制
1.接口回调
简单一句话:当A类中调用B类的方法之后,会接着调用A类中的方法。
条件是:A类实现了接口, B类注册了接口。
1.定义接口,里面的方法根据需要写相应的参数
2.让事件源实现接口
3.让事件源持有事件的对象
4.让事件注册接口(写setXXX--一般适用于fragment,Activity,Service或构造函数--一般适用于普通类) 5.事件源开启注册(调setXXX或构造函数)
6.让事件源调事件的方法
7.让事件的方法调接口
8.事件源中完成处理
2.AIDL 使用callback机制实现跨进程回调
1.定义AIDL服务接口
2.服务端暴露注册回调接口方法。
3.服务端编写回调逻辑
4.客户端编写调用逻辑
按照书的逻辑重新梳理哈。
1.服务端
服务端首先要创建一个Service用来监听客户端的连接请求,然后创建一个AIDL文件,将暴露给客户端的接口在这个AIDL文件中生命,最后在Service中实现这个AIDL接口即可。
2.客户端
首先绑定服务端的Service,绑定成功后,将服务端返回的Binder对象转成AIDL接口所属的类型,接着调用AIDL中的方法。
这篇文章没有看完 Android中AIDL的使用详解 - 简书