android AIDL 总结
来源:互联网 发布:sql 删除数据表字段 编辑:程序博客网 时间:2024/05/18 00:53
AIDL用途:进程间通信。
总结:
1.创建aidl文件,命名为IMyAidl.aidl。所在包名:com.android.my.aidl
2.eclipse自动生成IMyAidl.java。里面包含自己写的接口,还有系统自动生成的用于进程间通信的大段代码。
3.创建一个类,这个类是主要功能实现类,可以命名为MyServiceImpl.java继承IMyAidl.Stub。Stub是Binder的派生类。
4.建立一个service,这个service是用来让其他进程绑定的。在这个service的onBind()方法里,返回MyServiceImpl的实例。
5.在服务端的Manifest中,添加4中service的元素,其中Intent-filter里action添加 <action android:name="com.android.my.aidl.IMyAidl"/>
6.把上边IMyAidl.aidl连同包一同拷贝给Client端
7.在Client端有有一个activity(这里简单举例为单向通信),它需要通过bindService方法和service绑定,目的是“获得”service的Binder,进而调用接口实现方法。
bindService(new Intent("com.android.my.aidl.IMyAidl"), new ServiceConnected(){.... ...... .....}, Context.BIND_AUTO_CREATE)
在 ServiceConnected的回调方法中,传回的IBinder 要赋给成员变量IMyAidl mMyAidl= IMyAidl.Stub.asInterface(IBinder) //mMyAidl其实是服务端的一个代理proxy.
到此:C/S连接完毕,客户端可以访问服务端功能。
能够使用AIDL,只是说明可以实现进程间通信的功能。但是究其具体机制,还需要进一步的研究Binder源码。
- 关于android aidl总结.
- android AIDL 总结
- android AIDL 总结
- Android AIDL运用总结
- Android aidl 使用总结
- Android studio aidl 总结(二)
- 第一次使用Android AIDL总结
- Android工作实践总结:Aidl 远程调用(aidl实例总结)
- Android工作实践总结:Aidl 远程调用(aidl实例总结)
- Android基础——AIDL总结篇
- Android studio 使用aidl总结(一)
- Android AIDL的总结与介绍
- Android studio 上使用aidl总结
- Android Service总结06 之AIDL
- 关于android AIDL的学习总结
- AIDL总结
- AIDL总结
- AIDL总结
- android 画虚线、实线,画圆角矩形,一半圆角
- ORACLE 体系结构--内存结构
- git杂记
- Android下发送和接收OBD数据
- Getting index value on razor foreach
- android AIDL 总结
- javascript 记忆
- jQuery Ajax GET and POST calls to Controller's Method in MVC
- TCP、HTTP、SOCKET原理
- 每天自动备份mysql脚本
- WebRequest.Credentials 属性
- SQL server 使用存储过程生成流水号
- Passing multiple POST parameters to Web API Controller Methods
- 面相与招聘