AIDL

AIDL:Android Interface Define Language,它是Android的一种接口定义语言,用于生成可以在Android设备上,两个进程之间进行通信的代码,即实现进程间的通信

AIDL的编写主要分为如下三部分:

  1.创建AIDL

    (1)创建要操作的实体类,实现Parcelable接口,以便序列化/反序列化

    (2)新建AIDL文件夹,在其中创建接口AIDL文件以及实体类的映射AIDL文件

    (3)Make project,生成Binder的java文件

AIDL文件大致可以分为两类。一类是用来定义parcelable对象,以供其他AIDL文件使用AIDL中非默认支持的数据类型的。一类是用来定义方法接口,以供系统使用来完成跨进程通信的。

  2.服务端

    (1)创建Service,在其中创建上面生成的binder对象实例,实现接口定义的方法

    (2)在onBind()中返回

  3.客户端

    (1)实现ServiceConnection接口,在其中拿到AIDL类

    (2)bindService()

    (3)调用AIDL类中定义好的操作请求

原文地址:https://www.cnblogs.com/chen-cai/p/9636861.html