外观
AIDL 中支持哪些数据类型?如何传递自定义 Parcelable 对象?
标准回答
Java AIDL 支持基本类型、String、CharSequence、受支持的数组/容器、Parcelable 及 AIDL 接口等。自定义对象需在两端提供一致定义;传统写法实现 Parcelable 的 writeToParcel 和 CREATOR,并在 .aidl 声明 parcelable 类型后用于接口参数。
**参数方向与版本:**按需要声明 in/out/inout,能只传入就优先 in。结构化 Parcelable、稳定 AIDL 及不同后端的类型限制不同,不能把任意 Java 对象直接作为参数。
通俗例子
SongItem 要传给另一个进程,通常需有一致的 Parcelable 定义和正确的类加载环境;接收方找不到类型,就可能反序列化失败。
内容来源
- Android · AI Agent 知识手册 · 原条目
7.2.2