关于AIDL中的in、out和inout修饰符

来源:互联网 发布:爱迪生电弧打火机 淘宝 编辑:程序博客网 时间:2024/06/05 20:11

在Android中的IPC方式中有一种方式为AIDL,当我们在使用AIDL时需要根据不同的数据传输场景去选择不同的修饰符,只要涉及到in、out和inout修饰符。

注:这个知识点在面试CVTE时遇到了,当时只说了in和out修饰符,特此在这里总结一下。

一、为什么会出现这三个修饰符

所有的非基本数据类型的参数在以AIDL方式传输时都需要使用定向Tag来指定数据流通的方式。

二、三个修饰符的区别
  1. 基本数据类型的修饰符都是in
  2. in —– 只能在客户端设置值,在服务端获取值,反之不可以。
  3. out —– 只能在服务端设置值,客户端获得服务端设置的值,如果客户端在传值给服务端时设置了初始值,服务端无法得到该值。
  4. inout —— 客户端和服务端之间形成双向的数据通路,客户端设置的值服务端可以获得,反之,服务端设置的值客户端也可以获得。

以上就是一点小小的总结,希望可以帮助到需要的小伙伴。

原创粉丝点击