android中的AIDL

来源:互联网 发布:ubuntu命令行输入中文 编辑:程序博客网 时间:2024/05/22 14:26

aidl:Android Interface Defination Language 安卓的接口定义语言;

aidl格式的文件是一个对外开放的可以共享的文件,可以把它拷贝其他工程中使用;

 IPC Inter process communication 进程间的通讯;

Stub 远程服务的代理对象:

远程服务:同一个设备上的另一个软件中的服务组件;

本地应用:自己当前的应用程序.

调用远程服务中的业务方法:在本地应用中调用远程服务的方法;
1.创建一个远程服务的工程,写一个服务的组件,在服务中写一个业务方法;
2.创建本地应用,调用远程服务中方法:
2.1 在本地应用中开启远程服务:
2.2 在本地应用中绑定远程服务;
2.3 在本地应用中绑定服务成功时得到中间人对象;
2.4 在远程服务中把IService.java改成IService.aidl,把文件中两个public删除了;
2.5 在远程服务中让中间人继承Stub;
2.6 在本地应用中创建一个包,包名必须与远程服务中IService.aidl文件所在报名相同;
2.7 把远程服务中IService.aidl文件拷贝到本地应用的这个包下面;
2.8 在本地应用绑定服务成功时得到服务返回而中间人对象:
myBinder = Stub.asInterface(service);




原创粉丝点击