JAVa调用aidl_aidl demo调用原理

通过网络的例子,生成的BookManager如下所示:service和client都是相同的java文件生成的。这个类的例子添加book和查询book两个例子客户端创建bookmananger方法:bookManager = BookManager.Stub.asInterface(iBinder);客户端里的iBinder,是binderProxy类的创建一个proxy的例子点击添加后点击后调用...
摘要由CSDN通过智能技术生成

通过网络的例子,生成的BookManager如下所示:service和client都是相同的java文件生成的。

这个类的例子添加book和查询book两个例子

客户端创建bookmananger方法:

bookManager = BookManager.Stub.asInterface(iBinder);

客户端里的iBinder,是binderProxy类的

创建一个proxy的例子

fd3b9ef0587692256dad707739010ef0.png

点击添加后

6ca49636a1f6d52f77d4c84ee135fbd0.png

0bae1c06fee93d0be45405c8b7cf0e6a.png

点击后调用

mRemote.transact(Stub.TRANSACTION_addBook, _data, _reply, 0);----》》

调用BinderProxy类里的public boolean transact(int code, Parcel data, Parcel reply, int flags) throws RemoteException

8da570438c18c53936fda25c7aeeb7f3.png

接着调用Binder里面的execTransact,执行了native函数后,会自动执行下面的图片函数,进入service服务端的代码,下面代码是单独的进程,在binder

进程里面,所以不需要担心这里的操作。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值