本文主要给大家分享通过鸿蒙手机与 NFC 标签碰一碰唤起原子化服务,即一个相关的 FA。


前置条件
https://developer.huawei.com/consumer/cn/
https://developer.huawei.com/consumer/cn/service/josp/agc/index.html#/
https://developer.huawei.com/consumer/cn/console#/openCard/FastService/63
https://devicepartner.huawei.com/cn/
什么是碰一碰?
官方介绍:碰一碰特性,是 HarmonyOS 具备的多终端业务协同技术。其依托 NFC 短距通信协议,通过碰一碰的交互方式,将手机和全场景设备连接起来。
然后通过手机端的原子化服务能力,快速完成配网、远程控制的能力,解决了应用与设备之间接续慢、配网复杂、传输难的问题,为用户带来无缝切换的流畅体验。
关键字:NFC、原子化服务(免安装)。
NFC:NFC(Near Field Communication,近距离无线通信技术) 是一种非接触式识别和互联技术,让移动设备、消费类电子产品、PC 和智能设备之间可以进行近距离无线通信,通常的通信距离是 4 厘米或更短。
https://developer.harmonyos.com/cn/docs/documentation/doc-guides/connectivity-nfc-overview-0000000000030030

https://developer.harmonyos.com/cn/docs/documentation/doc-guides/atomic-service-definition-0000001090840664
碰一碰实战
①构建原子化服务
在 DevEco Studio 中创建项目,选择原子化服务,启动“show in service center”。



https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ability-service-widget-overview-0000001062607955
服务卡接口:服务卡片提供方控制卡片实际显示的内容、控件布局以及控件点击事件。
如果创建项目时,勾选了 show in service center,则可以在 entry module 中的 MainAbility 类中看到重写的相关接口。

到目前为止你已经构建好了一个原子化服务项目,是不是很容易,你没有写任何一行代码。
②运行原子化服务
说明:如果你想在发布前看看你的项目是否能正常运行,那么你可以进行本地运行,运行调试有两种方式。
远程模拟器调试,参看:使用模拟器进行调试。
https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ide_debug_emulator-0000001115721921
https://developer.harmonyos.com/cn/docs/documentation/doc-guides/ide_debug_device-0000001053822404
在未发布之前,我们只需要先测试项目的功能是否正常,所以我们可以先用 debug 环境,目前我使用的是真机调试。
运行:Run。说明:运行只要点击 IDE 上的 Run 即可,我们说说可能遇到的问题。
问题 1:签名认证问题导致 debug 环境安装失败。





https://developer.harmonyos.com/cn/docs/documentation/doc-guides/publish_app-0000001053223745




https://harmonyos.51cto.com/posts/9937
③发布原子化服务
配置 release 环境的签名与认证:说明,发布之前必须要构建 release 的签名包,所以你必须需要在 AGC 平台上申请相关发布的数字认证和 Profile 文件。
生成环境下的签名与认证的申请可以参看:申请发布证书,将申请到的数字认证和 Profile 文件配置到本地的 release 环境。
https://developer.huawei.com/consumer/cn/doc/distribution/service/apply-certificate-0000001238387073
构建 APP:点击 IDE 的菜单:Build->Build Hap(s)/APP(s)->Build APP(s)。
构建成功后可以在项目的 build->outputs->app->release->xxxx-release-signed.app。


发布应用:将已认证签名的 app 包上传到 AGC(AppGallery Connect)平台,并且通过审核,发布成功。

发布流程不是本此的重点,这里就一步带过,如果对于上架问题,你可以参看:发布应用。
https://developer.huawei.com/consumer/cn/doc/distribution/app/agc-help-configure-appinfo-0000001100086630
④申请 NFC 标签
编辑服务:打开需要申请 NFC 标签的服务(HarmonyOS 服务开放平台),点击“编辑”。
https://oauth-login.cloud.huawei.com/oauth2/v2/authorize?access_type=offline&response_type=code&client_id=6099200&login_channel=89000000&req_client_type=89&lang=zh-CN&redirect_uri=https%3A%2F%2Fdeveloper.huawei.com%2Fconsumer%2Fcn%2Fdevunion%2FopenPlatform%2Frefactor%2FhandleLogin.html&state=8534637&scope=https%3A%2F%2Fwww.huawei.com%2Fauth%2Faccount%2Fcountry+https%3A%2F%2Fwww.huawei.com%2Fauth%2Faccount%2Fbase.profile


申请支持碰一碰 NFC 标签:在 HarmonyOS 服务开放平台的“分发”菜单中申请支持碰一碰/扫一扫触发标签。

https://harmonyos.51cto.com/posts/9898
最终华为提供的 NFC 标签有两种,如下所示:
唤起服务的二维码
唤起服务的 NFC 标贴数据

服务提测:在“测试”菜单中,点击“开始测试发布”。

添加测试用户:可以构建自己下需要添加测试用户,此用户必须为华为注册用户。


👇扫码报名周三的鸿蒙直播课👇


求分享

求点赞

求在看
文章转载自鸿蒙技术社区,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




