AIDL:Android interface definition language 接口定义语言
不同APP进程之间数据通信的接口
目录
(一)AIDL组件的创建
- 创建AIDL组件
- 在生成的AIDL接口内部 申明 需要自定义实现的方法
(二)服务端
在Service的 Binder() 对象的实例中,返回AIDL的接口,并且实现自定义
(三)本地客户端
实现
ServiceConnection
接口,在其中拿到 AIDL 类IMyAidlInterface aidl= IMyAidlInterface.Stub.asInterface(iBinder) //传入一个iBinder对象,得到一个IMyAidlInterface返回对象
- 通过返回的IMyAidlInterface对象,拿到自定义的方法
(四)远程客户端
保持和本地客户端的AIDL完全一致(直接将本地客户端main文件夹下的aidl文件夹拷贝到远程客户端main文件夹下)Make project ,生成对应的 Binder 的 Java 文件
在远程客户端实现service绑定操作,实现
ServiceConnection
接口,在其中拿到 AIDL 类 (同本地客户端一样