浅析HarmonyOS碰一碰

浅析HarmonyOS碰一碰

本人主要是做软件端设计和开发的,提出的问题和解决办法也是经过个人实践得来,思路主要是从软件端来设计,嵌入式大佬勿喷。

概念

基于HarmonyOS的碰一碰配 主要用于对已经初始化完毕但是为接入互联 的设备进行配 工作,或者是当家用WIFI信息改变后需要让终端设备从新入 。
配 成功后可调用系统能力启动对应的控制程序,这里控制程序一共有两种设计方法:

  1. 借助终端设备和控制终端设备(手机)之间建立的点对点通信信道进行数据的传输,但是改方法有弊端只能用于设备的控制不能用于数据的上 。
  2. 设备上云接入华为云物联 平台,可以通过云平台下发命令和上 数据。

主要的问题

在设计中最先需要解决的一个问题是控制程序如何知道终端设备所属的配 程序是哪一个r> 我们事先将产品编 (在调试助手端申请)和设备编 (如果上云的话需要写入云端定义的设备编 )写入NFC标签中,并在华为云开发中联盟中定义标签所属的配 信息,包括包名,所调用的模块等。
写入NFC标签信息:如果设备要上云请将设备编 定义在设备SN处

为什么我们的设备明明在线,启动配 程序后直接是100%失败而且智慧生活服务助手传递过来的sessionId是DEVICE_NOT_DOFUND而不是HASH值p>

  1. 终端设备已经启动并且正常工作:需要检查手机端WIFI是否已经连接并且WIFI能够正常上 ,对WIFI热点有要求最好是路由器2.4GHZ的,WIFI不要设置成隐藏热点,不要使用电脑热点可以使用手机热点,手机端和设备端距离不要太远。
  2. 在官方案例中还提供了AP配 ,这个AP配 的话可以理解为是手动登录华为云账户然后输入WIFI信息,然后手机端将WIFI信息发送到终端设备中。

如果配 程序和控制程序是使用和那么端从智慧生活服务助手获取到的deviceId或者是其他信息是如何提交给端的r> 这个问题在HarmonyOS开发者文档里面给出了解释,在端将需要传递的信息封装到中,然后直接传递便可,在FA端使用端接收数据。但是阅读文档发现生命周期函数并不能接收数据,只告诉了我们如何发送数据并没有说如何接收数据,官 案例代码如下:

其实FA端并不用在端显示的定义函数去接收参数,只需要在所对应的页面的数据绑定模型中定义和Java端一致的变量便可,系统会自动将改参数从PA端注入到FA端中(是很方便??)
PA端分封装并传递数据:

FA端定义数据模型等待参数注入:

简要说明一下系统工作流程

系统工作流程图
配 程序和控制程序的解析和设计在后面的文章中讲述,如有不对错误之处请各位大佬多多指教。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年4月16日
下一篇 2022年4月16日

相关推荐