创建aidl远程服务可以获取其他android进程的数据等,其步骤如下:
1.服务端
1-1.创建需要传输的数据的实体类,该类继承 Parcelable接口;
1-2.创建该类的.aidl文件。其文件内容为 parcelable 类名;
1-3.创建远程Ixx.aidl文件,如果该类不为普通类型,那它就必须导入,创建该文件时系统自动生成了Ixx类;
1-4.创建Service子类,该类必须包含一个Stub的静态内部类。用于实现Ixx.aidl文件
所声明的接口方法;
1-5.在Manifest.xml文件里添加Service子类的<service>标签声明;
2.客户端
2-1.复制Aidl有关的文件到客户端,包括传输的JavaBean(注意:AIDL复制包路径必须跟服务端一致);
2-2.跟本地Binder服务一样,通过bindService()方法绑定服务,该方法用到了connection
服务用于监听服务;
2-3.声明Ixx类,当connection.onServiceConnected获取通过Ixx.Stub.asInterface();
2-4.利用Ixx类获取相关服务;