
aidl
文章平均质量分 90
豌豆琪琪
这个作者很懒,什么都没留下…
展开
-
AIDL使用继承关系自定义类及调用数据异常问题记录
AIDL使用与注意事项基本使用1.aidl的定义,我这里定义了aidl 使用的三种场景2.service 的构建3.构建实体类实体类基类实体类父类继承关系引发的参数失效或为null 问题4.服务的绑定与数据通信5. 新建接口IDeviceListener.Stub 服务端收到为null 问题6.服务的注册基本使用1.aidl的定义,我这里定义了aidl 使用的三种场景package com.example.aidltestmoclinet;import com.example.aidltestm原创 2021-05-26 11:15:18 · 1412 阅读 · 2 评论 -
AIDL使用 进阶1
在之前的AIDL使用继承关系自定义类及调用数据异常问题记录,中具体讲了aidl 的基本使用,包括基本数据类型,自定义类型的传值问题。但是归根到底,使用的本质还是进程间的通信,但是任何进程间的通信都是需要成本的,如果你的业务较多,定义了N多个.aidl 文件,通过我上节讲的东西,那是不是在客户端和服务端需要定义N多个service 文件。相互绑定呢?其实我们可以换一种思路。在绑定服务的时候需要注册一个ServiceConnection 接口,绑定成功后会给出public void onSe原创 2021-11-04 19:41:48 · 250 阅读 · 0 评论 -
AIDL使用 进阶2
使用aidl 后如何彼此检测远程服务和客户端的生命周期。如果不能监控那将有一个很严重问题,程序可能会出现Crash ,报的基本是一个远程服务已经不存在。1.客户端如何检测服务端是否连接基本有三种方式:调用远程方法的时候捕获RemoteException(DeadObjectException); 调用IBinder的pingBinder()进行检测; 实现IBinder.DeathRecipient接口回调前两种是比较被动的,一般是你去使用的时候才去调用和验证。相比第三种比较靠谱些。原创 2021-11-04 20:53:52 · 549 阅读 · 0 评论