Binder池浅谈分析

使用场景:客户端使用多个AIDL进行向服务段跨进程通信的时候,为了减少生成的Service对象占用系统资源,使用一个Service管理多个AIDL。

本代码实例是参考任玉刚的艺术探索书里实例,实践分析:

客户端

  1. 创建ICompute,IsecurityCenterAIDL接口对象,其接口对应的自定义方法

  2. 创建IBinderPool AIDL接口对象,接口自定义方法:

  1. 创建ICompute的binder实体类,IsecurityCenter的binder实体类,在客户端起的作用仅仅是为了根据binder找到AIDL接口对象,在服务端的作用是处理客户端传过来的数据。

  2. 创建BinderPool类,实现服务的绑定以及管理binder

  1. client的Activity的多进程通信代码,通过binderCode获得对应的binder,通过binder找到AIDL接口对象,调用接口方法和Service端通信

服务端

  1. 创建BinderPoolServer, 并且在manifest注册该服务,绑定binder

运行结果显示*

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值