一、简介
1、载体介绍
Binder对象
每个进程都有一个 Binder 驱动程序,它负责创建和管理 Binder 对象。Binder 对象是跨进程通信的基本单位,它们用于在客户端和服务端之间传递数据和调用方法。每个Binder对象都有一个唯一的标识符,称为 Binder 标识符(Binder ID),用于在系统中唯一标识该对象。
Parcel(包裹)
在 Binder 中,数据传递通过 Parcel 对象进行。Parcel 是一种轻量级的数据容器,用于在进程之间传递数据。它可以包含基本数据类型(如 int、float 等)、字符串、数组以及 Parcelable 对象等。在进行跨进程通信时,数据会被序列化到 Parcel 对象中,然后通过 Binder 传递给目标进程,在目标进程中再进行反序列化。
Parcelable接口
为了在 Binder 中传递自定义对象,Android 提供了 Parcelable 接口。实现了 Parcelable 接口的对象可以将自身序列化为 Parcel 对象,并在 Binder 间传递。通过实现 Parcelable 接口,开发者可以控制对象如何被序列化和反序列化,以确保跨进程传递的数据的完整性和正确性。
综上所述,Binder 对象是跨进程通信的基本单位,而 Parcel 对象则是在 Binder 中进行数据传递的载体。通过 Parcelable 接