HarmonyOS鸿蒙Next中UIObserver用Watcher数据上传,接收的参数有两个应该用哪个?

HarmonyOS鸿蒙Next中UIObserver用Watcher数据上传,接收的参数有两个应该用哪个? data里的数据都是字符串还有像下面这种的数据混在里面 cke_7846.png appEventInfos则有独立的params,没有参杂api自己的参数 cke_13626.png

之前参考demo是用的 data,但是打印的时候混了api的参数。

这里直接用 appEventInfos 的 params 里面参数作为上报数据应该也可以吧?


更多关于HarmonyOS鸿蒙Next中UIObserver用Watcher数据上传,接收的参数有两个应该用哪个?的实战教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

都可以的,官方提供了这两个字段,主要看自己需要哪些数据作为上报数据

更多关于HarmonyOS鸿蒙Next中UIObserver用Watcher数据上传,接收的参数有两个应该用哪个?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS Next中,UIObserver使用Watcher进行数据上传时,两个参数分别为变更前后的数据值。根据实际需求选择:若需获取更新后的状态,使用第二个参数;若需对比变更前的数据,使用第一个参数。具体参数顺序参考API文档中Watcher回调函数的定义。

在HarmonyOS Next的UIObserver中,Watcher回调接收的data参数包含API系统参数与应用事件数据的混合内容,而appEventInfos.params专门封装了应用层的事件参数。根据你的需求:

  1. 使用appEventInfos.params更合适:它直接提供纯净的应用事件数据,无需从混杂字符串中解析,能避免API参数的干扰。
  2. data参数适用场景:若需要同时获取系统级信息(如API调用状态),可结合使用,但需注意数据格式可能包含非结构化字符串。

建议直接通过appEventInfos.params提取参数进行上报,确保数据准确性和处理效率。

回到顶部