鸿蒙OS开发文档 鸿蒙OS GeneralReceiver

2024-02-25 开发教程 鸿蒙OS开发文档 匿名 0

GeneralReceiver

java.lang.Object
|---ohos.app.GeneralReceiver

public class GeneralReceiver
extends Object
implements Sequenceable

提供通用回调方法,用于在进程间通信 (IPC) 期间从其他进程接收结果。

可以创建一个子类实例,重写onReceive(int, ohos.utils.PacMap) 方法,将子类实例通过IPC发送给对端。 然后对端使用 sendResult(int, ohos.utils.PacMap) 将结果发回。

嵌套类摘要

从接口 ohos.utils.Sequenceable 继承的嵌套类/接口
Sequenceable.ProducerT

字段摘要

修饰符和类型字段描述
static Sequenceable.ProducerGeneralReceiverPRODUCER从 Parcel 创建一个 GeneralReceiver 实例。

构造函数摘要

构造函数描述
GeneralReceiver()用于创建 EventHandler 为 null 的 GeneralReceiver 实例的构造函数。
GeneralReceiver(EventHandler handler)用于创建带有 EventHandler 对象的 GeneralReceiver 实例的构造函数。

方法总结

修饰符和类型方法描述
booleanmarshalling(Parcel out)将 GeneralReceiver 对象编组为 Parcel。
protected voidonReceive(int code, PacMap data)收到结果
voidsendResult(int resultCode, PacMap resultData)将结果发送到当前的 GeneralReceiver。
booleanunmarshalling(Parcel in)从 Parcel 中解组 GeneralReceiver 对象。
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
从接口 ohos.utils.Sequenceable 继承的方法
hasFileDescriptor

字段详细信息

PRODUCER

public static final Sequenceable.ProducerGeneralReceiver PRODUCER

从 Parcel 创建一个 GeneralReceiver 实例。

构造函数详细信息

GeneralReceiver

public GeneralReceiver()

用于创建 EventHandler 为 null 的 GeneralReceiver 实例的构造函数。

GeneralReceiver

public GeneralReceiver(EventHandler handler)

用于创建带有 EventHandler 对象的 GeneralReceiver 实例的构造函数。

参数:

参数名称参数描述
handler表示 EventHandler 对象。 如果该参数不为null,则在指定EventHandler的线程上调用onReceive(int, ohos.utils.PacMap)。 如果此参数为 null,则可以在任何线程上调用 onReceive(int, ohos.utils.PacMap)。

方法详情

sendResult

public void sendResult(int resultCode, PacMap resultData)

将结果发送到当前的 GeneralReceiver。

参数:

参数名称参数描述
resultCode表示您根据需要定义的自定义结果代码。
resultData指示包含结果数据的 PacMap 对象。

onReceive

protected void onReceive(int code, PacMap data)

收到结果

您必须重写此方法

参数:

参数名称参数描述
code表示发送方发送的结果码。
data指示包含发送方发送的结果数据的 PacMap 对象。

marshalling

public boolean marshalling(Parcel out)

将 GeneralReceiver 对象编组为 Parcel。

进程可以调用 unmarshalling(ohos.utils.Parcel) 方法从 Parcel 中解组 GeneralReceiver 对象以实现进程间通信 (IPC)。

指定者:

接口 Sequenceable 中的编组

参数:

参数名称参数描述
out指示用于编组的 Parcel 对象。

返回:

如果编组成功,则返回 true; 否则返回 false。

unmarshalling

public boolean unmarshalling(Parcel in)

从 Parcel 中解组 GeneralReceiver 对象。

指定者:

在接口 Sequenceable 中解组

参数:

参数名称参数描述
in指示用于解组的 Parcel 对象。

返回:

如果解组成功,则返回 true; 否则返回 false。