鸿蒙NFC标贴写入数据-详细 原创 精华
目标
将鸿蒙原子化服务信息和设备的MAC地址写入NFC标签
前置条件
原子化服务在鸿蒙AGC(AppGallery Connect)平台已发布(或灰度发布,灰度发布可以参看:华为的开放式测试)获取相关的NFC标签信息。
一、NFC的数据样例结构
首先我们先看下NFC的数据样例结构
例如:D20C1A6170702F68776F6E65686F702001004800393955370081060005200685919106E5AD7D0BAEEB
看数据样例中标注加粗的部分,一共有两处:
- 39395537:这是Product ID(此处的值是有关联过原子化服务包名而产生的Product ID,目前在华为调测助手中申请到的Product ID无法关联到原子化服务包名,也就无法建立关联,所以这里只讨论NFC的数据样例结构)的Ascill码(Ascill码在线工具)
- E5AD7D0BAEEB:BLE设备硬件编码(MAC)
如何获取硬件设备的MAC地址?
回答:可以通过华为提供的”BLE调试助手“来获取,获取步骤如下:
步骤1、在华为应用市场搜索”BLE调试助手“,下载并安装成功;
步骤2、打开”BLE调试助手“,此时会显示所有扫描到的蓝牙设备,可以通过点击”CONNECT“连接测试是否可以配对成功,在对应的item中可以看到设备的MAC地址;
步骤3、尝试连接配对,点击”CONNECT“后,连接成功会提示用户,当然你也可以进行断开连接。
二、写入NFC标签数据
2.1、安装HW AirLink测试工具
2.2.1、下载AirLink安装包
下载本地解压出apk安装包
2.2.2、安装AirLink
安装AirLink可以用多种方式,下面介绍常用的两种方式。
方式1:adb
说明:adb安装方式,需要保证Windows设备安装了adb工具,并配置了环境变量,adb安装与环境变量配置
- 打开Windows设备的cmd命令行工具
- 执行命令:adb install –r hilinkcert-tool-1.0.0.3.apk
如下图:
方式2:通过华为手机助手
说明:使用USB将手机连接PC端,将AirLink工具安装包拷贝“内部存储”根目录,通过手机端的文件夹管理器打开后,手动点击安装。这种方式比较简单,就不一一介绍。
2.2、将华为提供的数据信息写入NFC
首先准备好需要写入NFC的数据内容(由原子化服务发布后华为提供,当然你也可以使用灰度发布的方式进行测试获取相关数据),我这里发布了一个原子化服务,华为提供的一份NFC数据内容如下:
034cD20C1A6170702F68776F6E65686F702001004800393955370081060005200685919106E5AD7D0BAE37FE。
步骤1、启动AirLink工具;
步骤2、点击”add“,输入邀请码,b4zd8bz3,点击”OK“;
步骤3、点击NFC选项,进入NFC读写界面,选择”NFC WRITE“选项;
步骤4、写入NFC数据,需要勾选”byte code“选项,点击”置入缓存区“;
注意、注意、注意!!!
- 数据信息前2个字节“03XX”与最后一个字节“FE”要去除,将从 D2XXXX 开始直到倒数第二个字节全部复制到输入框。
例如: 申请的码流“034cD20C1xxxxxBAE37FE”,应输入“D20C1xxxxxBAE37”,否则写入失败,建议可以使用:NFC Tools PRO 工具(下载地址 提取码:t2iw)进行写入则可以忽略此问题。 - 写入时需关闭手机网络;
- 选用空白的NFC标签进行写入,如果NFC标签中已经写入数据,可以通过NFC Tools PRO 工具删除标签内容,请看本文第三部分:删除NFC标签数据;
步骤5、将需要写入的NFC标签靠近手机背部即可完成写入。
三、删除NFC标签数据
前置条件:下载并安装NFC Tools PRO 工具(下载地址 提取码:t2iw)
友情提醒:如果你想删除华为手机(HarmonyOS)中已经写入的标贴,并且此标贴与原子化服务关联,则你需要使用一台非HarmonyOS系统的手机安装NFC Tools PRO 工具,使用以下步骤进行删除,否则当HarmonyOS系统手机靠近NFC标贴时会先拉起原子化服务,导致无法删除标贴内容。
步骤1、启动NFC Tools PRO 工具;
步骤2、切换tab到”其他“,选择删除标签菜单;
步骤3、靠近即可删除NFC标签。
删除成功后即可以将数据写入到NFC标签。
感谢
如果您能看到最后,还希望您能动动手指点个赞,一个人能走多远关键在于与谁同行,我用跨越山海的一路相伴,希望得到您的点赞。
不错,好文!!感谢分享
想了解如何用NFC Tools PRO 工具写入码流,谢谢!
非常简单,软件是中文操作菜单,你只要下载软件后,根据要求操作就可以,在操作中都会有一些提示。
我正在用NFC TOOLS PRO,翻了半天没找到byte code这个功能。目前只能将码流当成文本烧录进标签。请问具体是哪个功能吗?
NFC Tools PRO 是没有byte code操作,你直接把需要写入的数据在“写”的菜单中进行添加就可以,byte code是华为HW AirLink的操作。
用HW AirLInk 写入数据之后,无法修改标签内容,在NFC Tools 里面删除标签内容,NFC 一贴上去就优先读出了NFC里面的东西并操作了,求一个修改NFC 标签的方法
如果是删除了标签内容,应该是个空的标签,应该没有内容,你所说的优先读取内容具体是只什么?
现在的问题就是写了之后没法删除,NFC 内容的优先级太高了,直接被系统处理了,一贴上去,系统就先处理了,只有用应用调测助手可以改,其他所有可以操作NFC的软件都没法进行任何操作了,最后我只能借用一个非华为手机,通过软件来初始化NFC 标签,感觉他这个优先级有问题。
如果你是拉起原子化服务之类的操作,是可以通过使用其他非鸿蒙系统的手机下载NFC Tools进行删除操作。
对啊,就觉得这样很不科学,我想重新写点东西,还得准备一个其他的手机。
太细了