鸿蒙NEXT元服务:利用App Linking实现无缝跳转与二维码拉起
【效果】
元服务链接格式(API>=12适用):https://hoas.drcn.agconnect.link/ggMRM
生成二维码后效果:

【参考网址】
使用App Linking实现元服务跳转:https://developer.huawei.com/consumer/cn/doc/AppGallery-connect-Guides/agc-applinking-atomic-link-0000002046440041
草料二维码:https://cli.im/
【引言】
本文将详细介绍如何使用App Linking技术实现元服务之间的无缝跳转,并通过生成二维码的方式快速拉起元服务,从而简化用户操作流程,增强应用的互动性和推广效率。
【什么是元服务链接?】
元服务链接是一种专为开发者设计的受控URL服务,允许用户点击后直接进入特定的元服务内容页。这种即点即享的功能极大地简化了用户的操作流程,并且可以精准控制用户访问的时间范围。对于已上架的元服务,开发者能够为其生成并配置专属链接,同时设置有效期,以确保用户在有效期内能够访问到最新的内容或功能。
【使用场景】
• 扫码直达:用户可以通过扫描二维码直接进入特定的元服务页面。
• 社交分享:方便用户通过社交媒体分享特定的服务内容。
• 唤醒沉默用户:通过推送通知中的链接快速激活不活跃的用户。
• 营销推广:作为广告内容的一部分,引导用户进入体验服务,提高转化率。
【创建元服务链接】
要创建一个元服务链接,首先需要满足以下前提条件:
1. 在AGC(AppGallery Connect)平台上创建项目。
2. 开通App Linking服务。
3. 项目中存在已上架且支持HarmonyOS API 12及以上的元服务。
接下来,按照以下步骤创建链接:
1. 登录AppGallery Connect,选择“我的项目”。
2. 选择项目后,在左侧导航栏找到“增长 > App Linking”,选择“元服务链接(API>=12适用)”页签。
3. 点击“创建”,填写链接名称、设置链接的有效期等信息。
4. 可以选择添加自定义参数,以便更精确地定位到元服务中的指定页面。
5. 最后,保存或发布链接。
【自定义参数】
为了更灵活地控制跳转行为,开发者可以在创建元服务链接时设置自定义参数。这些参数通常用于指定页面路径或是导航目标。例如,可以通过pagePath参数指定具体的页面路径,或者使用navRouterName参数指向特定的导航目的地。如果涉及分包,则还需要提供subPackageName参数。
【应用内集成】
在应用内部,开发者可以使用UIAbilityContext.openLink接口来打开元服务链接。根据设置的不同,如果匹配到相应的元服务则会直接打开;否则,可能会抛出异常或者尝试通过浏览器打开链接。此外,还可以设置appLinkingOnly参数来控制是否仅限于通过App Linking打开元服务。
// 示例代码
import { common } from '@kit.AbilityKit';
import { BusinessError } from '@kit.BasicServicesKit'; let context: common.UIAbilityContext = getContext(this) as common.UIAbilityContext;
let link: string = "https://hoas.drcn.agconnect.link/9P7g";
context.openLink(link, { appLinkingOnly: true })
.then(() => {
console.info('openlink success.');
})
.catch((error: BusinessError) => {
console.error(`openlink failed. error:${JSON.stringify(error)}`);
});
【错误处理与调试】
当元服务链接过期或无效时,系统会给出相应的错误提示。开发者可以根据这些提示来进行错误处理。例如,当appLinkingOnly设为true时,如果遇到非法或失效链接,系统会抛出错误码"16000019"。在这种情况下,开发者应当准备好相应的错误处理逻辑,以保证良好的用户体验。
【二维码生成】
最后一步,开发者可以使用草料二维码工具将生成的元服务链接转换成二维码,方便用户通过扫描二维码的方式访问元服务。这不仅提升了用户体验,也增加了应用的互动性和传播性。
【结论】
通过以上步骤,开发者可以轻松地利用App Linking技术实现鸿蒙元服务之间的无缝跳转,并通过二维码方式快速拉起元服务。这项技术不仅有助于简化用户操作,还能增强应用的互动性和推广效果。希望本文能帮助开发者更好地理解和运用这一强大功能,为用户提供更加流畅便捷的服务体验。
鸿蒙NEXT元服务:利用App Linking实现无缝跳转与二维码拉起的更多相关文章
- 官网app下载更换成微信公众号二维码 测试
微信现在很火啊.公司官网原先提供的ios和andriod的app下载链接要求切换成微信公众号二维码.简单的替换,大家都说不需要测试直接上线.还是测了下. 1 验证所有与下载相关的信息都已去除. 包括下 ...
- 随手记一次利用开源zxing生成带嵌入logo的二维码图片
之前就在项目里面用过zxing生成二维码,最近另一个项目同样需要用到二维码,故重新在学了学利用zxing生成二维码 接下来先做准备工作了,因为我是用vs2013上开发的,故选择了.net4.5版本的z ...
- Canvas与Image互相转换示例以及利用该技术实现微信长按自动识别二维码功能
现在扫描二维码已经很普遍,微信扫一扫即可,但是如果二维码是在自己的手机上呢?那就要用到微信里的一个功能了,手指长按二维码,会弹出自动识别的选项,点确定就可以看到二维码的内容了.那么怎么通过前端实现这个 ...
- 利用websocket实现微信二维码码扫码支付
由于业务需要引入微信扫码支付,故利用websocket来实现消息推送技术. 实现大致流程:首先客户端点击微信支付按钮,触发微信支付接口,同时微信支付响应成功参数后,连接websocket客户端,此刻利 ...
- 基于日志服务的GrowthHacking(1):数据埋点和采集(APP、Web、邮件、短信、二维码埋点技术)
数据质量决定运营分析的质量 在上文中,我们介绍了GrowthHacking的整体架构,其中数据采集是整个数据分析的基础,只有有了数据,才能进行有价值的分析:只有高质量的数据,才能驱动高质量的运营分析. ...
- 今天网站后台登录页面需要生成一个二维码,然后在手机app上扫描这个二维码,实现网站登录的效果及其解决方案如下
要实现二维码登录,需要解决2个技术,1.需要js websocket 与后台php实现长连接技术 2.实现二维码生成技术 要实现这个功能第二个算是比较简单,只需要下载一个php的二维码生成器即可,但要 ...
- 制作IOS企业版App网页扫描二维码下载安装
有时候我们需要在XX网站的主页上去扫描二维码下载,那么ios开发中如何做到这一点呢. 我给大家解答一下,这也是在最近工作中用到的部分,在网上了解了一些. 下面给大家分解一下步骤: 1.Plist 和 ...
- 好推二维码如何通过应用宝微下载支持微信自动打开APP下载?
好推二维码 官网 http://www.hotapp.cn 1. 为什么使用应用宝微下载? APP下载二维码,通过微信扫描下载的时候,微信目前只支持应用宝微下载,才能在微信里直接打开下载,否则就需要在 ...
- 为什么下载APP,扫描二维码,关注微信公众号,就会送牛奶送小礼品?下载使用量高,会怎样?
以前的老办法是到处贴广告,电视上,广播上各种宣传. 在互联网时代,企业要盈利,除了不断优化升级自己的产品和服务,大量推广宣传产品,还要懂得用户思维.现在有网站,有APP,有微信,有二维码,可以卖产品, ...
- 网页二维码推广App的实现
移动互联网时代,一个APP的平均推广成本早已经超过了10块.而推广通常分二类: 1.已经下载过的用户,可以直接打开应用(一般人的手机上安装的应用都非常多,要快速找到某个应用是很困难的事情,而且Andr ...
随机推荐
- 1. Two Sum Go实现
在数组中找到 2 个数之和等于给定值的数字,结果返回 2 个数字在数组中的下标. 1. 解法1 时间复杂度 O(n^2) 直接两次遍历所有节点,进行求和比较 代码如下: func twoSum(num ...
- 手撸MQ消息队列——循环数组
队列是咱们开发中经常使用到的一种数据结构,它与栈的结构类似.然而栈是后进先出,而队列是先进先出,说的专业一点就是FIFO.在生活中到处都可以找到队列的,最常见的就是排队,吃饭排队,上地铁排队,其他就不 ...
- CMake构建学习笔记16-使用VS进行CMake项目的开发
目录 1. 概论 2. 详论 2.1 创建工程 2.2 加载工程 2.3 配置文件 2.4 工程配置 2.5 调试执行 3. 项目案例 4. 总结 1. 概论 在之前的系列博文中,我们学习了如何构建第 ...
- MySQL 大表拆分
概述 在实际工作中,在关系数据库(MySQL.PostgreSQL)的单表数据量上亿后,往往会出现查询和分析变慢甚至无法执行统计分析的情况.这时就需要将大表拆分为多个小表,将小表分布在多个数据库上,形 ...
- 从0到1,Flask全网最全教学!全文1w字,蓝图、会话、日志、部署等使用Flask搭建中小型企业级项目
从0到1,Flask全网最全教学!全文1w字,蓝图.会话.日志.部署等使用Flask搭建中小型企业级项目 什么是flask? Flask是一个使用Python编写的轻量级Web应用框架,它简洁而灵活, ...
- SqlEs-像使用数据库一样使用Elasticsearch
SqlEs SqlEs是Elasticsearch的客户端JDBC驱动程序,支持采用sql语法操作Elasticsearch.SqlEs构建在RestHighLevelClient,屏蔽了RestHi ...
- Nacos 配置加密
Nacos 配置加密 nacos配置加密官网 官网介绍太简单,而且GitHub 网络受限,随缘访问.Gitee 发现有镜像仓库,同步的最新版本 Gitee nacos 镜像仓库 但是官网中提到的加密插 ...
- Shell分析服务器日志命令
1.查看有多少个IP访问: awk '{print $1}' log_file|sort|uniq|wc -l 2.查看某一个页面被访问的次数: grep "/index.php" ...
- 左值 <->右值
左值引用指向左值 右值引用指向右值 int a = 5; int &ref_a = a; // 左值引用指向左值,编译通过 int &ref_a = 5; // 左值引用指向了右值,会 ...
- 【ARMv8基础篇】CCI-400控制器简介
CCI(Cache Coherent Interconnect)是ARM中的cache一致性控制器. CCI-400将互连和一致性功能结合到一个模块中.它支持多达两个ACE 主节点的连接,例如: Co ...