AIDL学习笔试
用AIDL构建远程服务的步骤:
1.编写用于向客户端定义接口的AIDL文件,并将AIDL文件添加到src目录下;
2.实现一个服务并从onBind()方法返回所生成的接口;
3.将服务配置添加到AndroidManifest.xml文件中。
ADT将调用AIDL编译器来生成AIDL文件的Java接口。
1.在AIDL文件中定义的接口在生成的代码中实现为接口;
2.名为Stub的static final抽象类扩展android.os.Binder并实现该接口;
3.名为Proxy的内部类实现该接口,Proxy是Stub类的代理。
当客户端与服务通信时,它们之间必须有一个协议。在Android中, 这个协议就是AIDL。所以,使用服务的第一步是,获取服务的AIDL文件并将其复制到客户端项目中。
下一步是,获取服务的引用(必须调用bindService()方法,因为是远程服务)。
[总结]
1.服务实现AIDL定义,而客户端绑定到AIDL定义;
2.服务通过从onBind()方法返回AIDL接口实现来实现AIDL定义;
3.客户端通过调用bindService()来绑定到AIDL服务,并调用unbindService()断开与服务连接。