AIDL机制

     安卓aidl机制,翻译为中文是安卓接口定义语言。了使其他的应用程序也可以访问本应用程序提供的服务,Android系统采用了远程过程调用(Remote Procedure Call,RPC)方式来实现。安卓linex内核设计为了保证安全,程序在相互隔离,在不同进程间运行。跨进程间通讯,实现了不同程序信息交互的问题,可以传递数据,也可以彼此唤起功能。

    面试的时候,很多人会让描述使用方法,这个还是需要记忆的。

    服务端方面:将需要开放的接口抽象到aidl文件中,然后在自己的内部类中对接口进行实现,并在自己被绑定的时候把内部类对象返回给客户端。客户端方面:当我们需要远程某个Service时,就像在绑定本地的Service一样去bindService,然后在绑定成功的回调函数中(也就是onServiceConnected方法)得到一个Ibinder对象(比如Service),这时调IMyService.Stub.asInterface(service)这样的语句,就可以得到服务端开放的interface接口对象,此时客户端可以直接调用这个对象的方法,犹如直接调用远程的Service对象一般。

    

猜你喜欢

转载自blog.csdn.net/qq_30632063/article/details/83583316