碰一碰,鸿蒙原子化服务实战

系统
碰一碰特性,是HarmonyOS具备的多终端业务协同技术。其依托NFC短距通信协议,通过碰一碰的交互方式,将手机和全场景设备连接起来。

想了解更多内容,请访问:

51CTO和华为官方合作共建的鸿蒙技术社区

https://harmonyos.51cto.com

目标

通过鸿蒙手机与NFC标签碰一碰唤起原子化服务,即一个相关的FA。

运行效果

我们先看下最终的运行效果

碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区

前置条件

1、申请华为开发者账号,并实名认证,如果你还没有华为账号,可以到[华为开发者门户注册];(https://developer.huawei.com/consumer/cn/)

2、账号具备发布应用/服务到AGC(AppGallery Connect)平台的权限;

3、账号具备HarmonyOS服务开放平台创建服务权限;

4、如果你想商用,则需要先在HarmonyOS Connect平台(原HiLink开发者平台)注册自己的设备并申请标签。

什么是碰一碰?

官方介绍:

碰一碰特性,是HarmonyOS具备的多终端业务协同技术。其依托NFC短距通信协议,通过碰一碰的交互方式,将手机和全场景设备连接起来。然后通过手机端的原子化服务能力,快速完成配网、远程控制的能力,解决了应用与设备之间接续慢、配网复杂、传输难的问题,为用户带来无缝切换的流畅体验。

关键字:NFC、原子化服务(免安装)

NFC:NFC(Near Field Communication,近距离无线通信技术) 是一种非接触式识别和互联技术,让移动设备、消费类电子产品、PC和智能设备之间可以进行近距离无线通信,通常的通信距离是 4 厘米或更短。有兴趣可以看NFC相关介绍与开发

原子化服务:原子化服务是HarmonyOS提供的一种面向未来的服务提供方式,是有独立入口的(用户可通过点击方式直接触发)、免安装的(无需显式安装,由系统程序框架后台安装后即可使用)、可为用户提供一个或多个便捷服务的用户应用程序形态。有兴趣可以看关于原子化服务的介绍。

碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区

碰一碰实战

一、构建原子化服务

1.1、在DevEco Studio中创建项目,选择原子化服务,启动“show in service center”。

碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区
碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区

1.1.1、show in service center

show in service center被勾选后IDE会自动创建服务卡,关于服务卡的内容,并不是本次介绍的重点,如果你有兴趣可以参看:服务卡片有详细的说明。

碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区

1.1.2、服务卡接口

服务卡片提供方控制卡片实际显示的内容、控件布局以及控件点击事件。如果创建项目时,勾选了show in service center,则可以在entry module中的MainAbility类中看到重写的相关接口。

碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区

到目前为止你已经构建好了一个原子化服务项目,是不是很容易,你没有写任何一行代码。

二、运行原子化服务

说明:如果你想在发布前看看你的项目是否能正常运行,那么你可以进行本地运行,运行调试有两种方式:

远程模拟器调试,参看:使用模拟器进行调试

真机调试,参看:使用真机进行调试

在未发布之前,我们只需要先测试项目的功能是否正常,所以我们可以先用debug环境,目前我使用的是真机调试。

2.1、运行:Run

说明:运行只要点击IDE上的Run即可,我们说说可能遇到的问题。

问题1、签名认证问题导致debug环境安装失败

碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区

解决方案:在IDE的File->Project Structure->Project->Signing Configs,如果你未登录,则需要使用华为开发者账号进行登录,点击SignIn即可跳转到登录页面。

碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区
碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区

登录成功后,在web页面上点击“允许”,再返回IDE即可进行签名和认证的相关配置。

碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区

如果你没有设置自己的签名可以通过:“Automatically generate signing”自动生成签名和认证,自动生成的只在debug环境下使用,建议需要发布的应用还是需要再AGC平台上申请相关的证书,参看:应用/服务发布

碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区

配置debug环境下的签名与认证后,可以在项目build.gradle的配置中查看到相关的签名与认证配置信息。

碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区

签名问题解决后再次运行项目 Run,运行成功后可以在手机端的我的服务中查看到你创建的服务。

碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区

这里需要你关注一点即前面提到的原子化服务的特性:免安装,这个免安装的配置在entry module下的config.json配置的字段:“installationFree”: true。

碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区

运行起来没问题,现在可以准备发布了。

备注:如果你想通过AGC平台发布前进行测试,可以通过华为提供的开放式测试方案进行上架前测试验证,请参看我前面写的一篇灰度发布的文章:鸿蒙基于开放式测试方案发布原子化服务的实战。

三、发布原子化服务

3.1、配置release环境的签名与认证

说明:发布之前必须要构建release的签名包,所以你必须需要在AGC平台上申请相关发布的数字认证和Profile文件,生成环境下的签名与认证的申请可以参看:申请发布证书,将申请到的数字认证和Profile文件配置到本地的release环境。

碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区

3.2、构建APP

点击IDE的菜单:Build->Build Hap(s)/APP(s)->Build APP(s),构建成功后可以在项目的build->outputs->app->release->xxxx-release-signed.app。

碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区
碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区

3.3、发布应用

将已认证签名的app包上传到AGC(AppGallery Connect)平台,并且通过审核,发布成功,发布流程不是本此的重点,这里就一步带过,如果对于上架问题,你可以参看:发布应用。

碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区

四、申请NFC标签

4.1、编辑服务

打开需要申请NFC标签的服务(HarmonyOS服务开放平台),点击“编辑”。

碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区
碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区

4.2、申请支持碰一碰NFC标签

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

如果你想要了解NFC标签的详细信息,可以参看我之前的一篇关于:鸿蒙NFC标贴写入数据-详细。

碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区

最终华为提供的NFC标签有两种,如下所示:

唤起服务的二维码

唤起服务的NFC标贴数据

碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区

4.3、服务提测

在“测试”菜单中,点击“开始测试发布”

碰一碰,鸿蒙原子化服务实战-鸿蒙HarmonyOS技术社区

4.4、添加测试用户

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

想了解更多内容,请访问:

51CTO和华为官方合作共建的鸿蒙技术社区

https://harmonyos.51cto.com

 

责任编辑:jianghua 来源: 鸿蒙社区
相关推荐

2021-07-15 09:39:06

鸿蒙HarmonyOS应用

2022-05-19 15:47:24

碰一碰连接设备开发鸿蒙

2021-12-28 16:10:20

鸿蒙HarmonyOS应用

2022-05-17 10:33:58

设备开发鸿蒙操作系统

2022-12-23 20:46:37

遥控器应用鸿蒙

2021-02-23 19:24:51

数字人民币碰一碰支付

2023-02-03 16:31:33

2021-03-20 22:11:16

数字人民币数字货币区块链

2021-04-27 13:58:03

数字人民币数字货币区块链

2021-01-26 00:46:40

微服务架构微服务应用

2020-05-06 17:08:40

缓存Key集群

2015-05-18 10:53:33

2022-05-18 16:17:31

设备开发鸿蒙

2021-11-12 09:56:38

鸿蒙HarmonyOS应用

2022-03-23 15:17:00

Harmony鸿蒙操作系统
点赞
收藏

51CTO技术栈公众号