AIDL机制如何实现
AIDL是一种接口语言,Binder的数据传输过程就是通过AIDL来实现的:
1、服务端中的Service给与其绑定的客户端提供Binder对象
2、客户端通过AIDL接口中的asInterface()将这个Binder对象转换为代理Proxy并通过它发起RPC请求
3、客户端挂起当前线程,并将数据写入data然后调用transact();
4、服务端调用ontransact()并启动线程池处理请求并返回处理数据,写入reply;
5、返回调用结果并唤醒客户端
AIDL是一种接口语言,Binder的数据传输过程就是通过AIDL来实现的:
1、服务端中的Service给与其绑定的客户端提供Binder对象
2、客户端通过AIDL接口中的asInterface()将这个Binder对象转换为代理Proxy并通过它发起RPC请求
3、客户端挂起当前线程,并将数据写入data然后调用transact();
4、服务端调用ontransact()并启动线程池处理请求并返回处理数据,写入reply;
5、返回调用结果并唤醒客户端