--摘自《android插件化开发指南》
1.自定义一个aidl文件后,android会帮助生成一个java文件,其中包括一个接口IInterface,两个类Stub和Proxy。为什么不分开3个文件,是因为当有多个AIDL时,Stub和Proxy就有可能重名
2.Stub的asInterface判断参数IBinder对象是否和自己在同一个进程,如果不是,则把IBinder包装成一个Proxy对象,调用Proxy中的方法
3.IBinder调用transact方法把数据传给Server端
--摘自《android插件化开发指南》
1.自定义一个aidl文件后,android会帮助生成一个java文件,其中包括一个接口IInterface,两个类Stub和Proxy。为什么不分开3个文件,是因为当有多个AIDL时,Stub和Proxy就有可能重名
2.Stub的asInterface判断参数IBinder对象是否和自己在同一个进程,如果不是,则把IBinder包装成一个Proxy对象,调用Proxy中的方法
3.IBinder调用transact方法把数据传给Server端
详细阅读后增加了几个知识点。 1、AIDI接口文件中,自定义实体对象作为参数时,需要在其前面加上in、out、inout标识。这几个标识的意思是: 被“in”标记的参数,就是接收实际数据的参数,这个跟我们普通参数传递一样的含义。在AIDL中,“out” 指定了一个仅用于输出的参数,换而言之,这个参数不关心调用方传递了什么数据过来,但是这个参数的值可以在方法被调用
举报文章
请选择举报类型
补充说明
0/200
上传截图
格式支持JPEG/PNG/JPG,图片不超过1.9M