鸿蒙NEXT元服务:利用App Linking实现无缝跳转与二维码拉起
【效果】
元服务链接格式(API>=12适用):https://hoas.drcn.agconnect.link/ggMRM
【参考网址】
使用App Linking实现元服务跳转:文档中心
草料二维码:草料二维码生成器
【引言】
本文将详细介绍如何使用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实现无缝跳转与二维码拉起
【效果】 元服务链接格式(API>12适用):https://hoas.drcn.agconnect.link/ggMRM 【参考网址】 使用App Linking实现元服务跳转:文档中心 草料二维码:草料二维码生成器 【引言】 本文将详细介绍如何使用App Lin…...
网络药理学之薛定谔Schrödinge Maestro:6、分子对接(Glide、Ligand docking)和可视化
本人是win11,薛定谔版本是12.9。 官网:https://www.schrodinger.com/ 本篇文章的示例大分子蛋白PDB ID为4KNN,小分子配体的MOL ID为MOL004004。 本文部分图源来自知乎https://zhuanlan.zhihu.com/p/416698194,推荐为原作者贡献阅读…...
已解决ModuleNotFoundError: No module named ‘selenium‘
1. 错误提示 ModuleNotFoundError: No module named selenium,这意味着你试图导入一个名为 selenium 的模块,但Python找不到这个模块 2. 解决方案 安装缺失的模块: 如果你确定模块名称正确但仍然收到这个错误,那么可能是你没有安装这个模块…...
【Maven】依赖冲突如何解决?
准备工作 1、创建一个空工程 maven_dependency_conflict_demo,在 maven_dependency_conflict_demo 创建不同的 Maven 工程模块,用于演示本文的一些点。 什么是依赖冲突? 当引入同一个依赖的多个不同版本时,就会发生依赖冲突。…...
什么是EMS
EMS是能量管理系统(Energy Management System)的缩写,是一种集成的技术解决方案,旨在帮助企业和组织更有效地管理和优化其能源使用。EMS通过收集、分析和报告能源数据来识别节能机会,并提供工具以实施改进措施。 主要…...
26页PDF | 数据中台能力框架及评估体系解读(限免下载)
一、前言 这份报告详细解读了数据中台的发展历程、核心概念、能力框架及成熟度评估体系。它从阿里巴巴的“大中台,小前台”战略出发,探讨了数据中台如何通过整合企业内部的数据资源和能力,加速业务迭代、降低成本,并推动业务增长…...
【Vue3】【Naive UI】< a >标签
【Vue3】【Naive UI】< a >标签 超链接及相关属性其他属性 【VUE3】【Naive UI】<NCard> 标签 【VUE3】【Naive UI】<n-button> 标签 【VUE3】【Naive UI】<a> 标签 <a> 标签HTML中的一个锚&…...
分页查询日期格式不对
方式一:在属性上加入注解,对日期进行格式化 方式二:在 WebMvcConfiguration 中扩展Spring MVC的消息转换器,统一对日期类型进行格式化处理 /*** 统一转换处理扩展spring mvc* 后端返回前端的进行统一转化处理* param converters*/Overrideprotected voi…...
DAY140权限提升-Linux系统权限提升篇VulnhubPATH变量NFS服务Cron任务配合SUID
一、演示案例-Linux系统提权-Web&普通用户-SUID-NFS安全 NFS是一种基于TCP/IP 传输的网络文件系统协议,通过使用NFS协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源。 https://www.virtualbox.org/wiki/Downloads https://www.vuln…...
HTTPS 的应用数据是如何保证完整性的?
在 HTTPS 中,确保 应用数据的完整性 是通过以下几个关键机制来实现的: 消息认证码(MAC):用于确保数据在传输过程中未被篡改。加密:通过加密数据防止数据被窃取,并与 MAC 配合使用,确…...
Unity ShaderLab 实现3D物体描边
实现思路: 给物体添加第二个材质球,在shader的顶点着色器中使顶点的位置变大,然后在片元着色器中输出描边颜色。 shader Graph实现如下: ShaderLab实现如下: Shader "Custom/Outline" {Properties{[HDR]_…...
SQL进阶——C++与SQL进阶实践
在C开发中,SQL数据库的操作是开发者常见的任务之一。虽然前面我们已经介绍了如何在C中通过数据库连接执行基本的SQL查询,但在实际项目中,我们通常需要更加复杂和高效的数据库操作。存储过程与函数的调用、复杂SQL查询的编写、以及动态构造SQL…...
AIGC--------AIGC在医疗健康领域的潜力
AIGC在医疗健康领域的潜力 引言 AIGC(Artificial Intelligence Generated Content,人工智能生成内容)是一种通过深度学习和自然语言处理(NLP)等技术生成内容的方式。近年来,AIGC在医疗健康领域展现出了极…...
node.js中实现MySQL的增量备份
有时候,我们需要对生产库进行备份,不要求实时性很高,大概每天一次就行,为性能考虑,只备份最新更改内容,即增量备份即可,这种场景下对DB的设计和备份语句有所要求。 首先要求按源表各字段定义目标…...
Java线程池提交任务流程底层源码与源码解析
前言 嘿,各位技术爱好者们,今天咱们来聊聊Java线程池提交任务的底层源码与源码解析。作为一个资深的Java开发者,我相信你一定对线程池并不陌生。线程池作为并发编程中的一大利器,其重要性不言而喻。今天,我将以对话的…...
新型大语言模型的预训练与后训练范式,Meta的Llama 3.1语言模型
前言:大型语言模型(LLMs)的发展历程可以说是非常长,从早期的GPT模型一路走到了今天这些复杂的、公开权重的大型语言模型。最初,LLM的训练过程只关注预训练,但后来逐步扩展到了包括预训练和后训练在内的完整…...
硬菜3道+馒头
硬菜3道 1、可乐鸡翅 》鸡翅滑刀酱油耗油胡椒粉盐》 搅拌腌制3-5分钟 》油锅,直到2面煎黄 》倒入可乐,到大火收汁,出锅 2、洋葱牛肉 》冻牛肉切薄酱油耗油胡椒粉盐 》手指摇匀 》加入生粉水,继续摇匀》直到粘稠 》油锅牛肉炒半熟&…...
YOLO系列论文综述(从YOLOv1到YOLOv11)【第14篇:YOLOv11——在速度和准确性方面具有无与伦比的性能】
YOLOv11 1 摘要2 改进点3 模型性能4 模型架构 YOLO系列博文: 【第1篇:概述物体检测算法发展史、YOLO应用领域、评价指标和NMS】【第2篇:YOLO系列论文、代码和主要优缺点汇总】【第3篇:YOLOv1——YOLO的开山之作】【第4篇ÿ…...
【Spring】聊聊@EventListener注解原理
1.一个Demo出发 在平时的开发中,其实编写同步线程代码是比较容易的,但是如何将一些操作和另外一些操作进行解除耦合,而事件方式 是一种很好的解耦合方式,比如当一个用户注销一个APP之后,需要发送一些短信 让他引流回来…...
LangChain——HTML文本分割 多种文本分割
Text Splitters 文本分割器 加载文档后,您通常会想要对其进行转换以更好地适合您的应用程序。最简单的例子是,您可能希望将长文档分割成更小的块,以适合模型的上下文窗口。 LangChain 有许多内置的文档转换器,可以轻松地拆分、组…...
梯度爆炸与消失
梯度爆炸和梯度消失 一、概念解析 (一)梯度爆炸 定义 在深度神经网络训练的反向传播过程中,梯度爆炸是指梯度的值过大的现象。这会使模型的参数更新出现异常。 产生原因 深层网络与链式法则:深度神经网络按链式法则计算某层权重…...
关于扩散方程的解
1-D 扩散方程的形式 Cauchy齐次方程 这个解无积分无级数,很简单的形式 美其名曰:基本解。 把基本解和初值做卷积,就得到cauchy方程的解。...
如何监控Elasticsearch集群状态?
大家好,我是锋哥。今天分享关于【如何监控Elasticsearch集群状态?】面试题。希望对大家有帮助; 如何监控Elasticsearch集群状态? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 监控 Elasticsearch 集群的状态对于确保…...
关于音频 DSP 的接口种类以及其应用场景介绍
在音频系统中,DSP(数字信号处理器)扮演着重要角色,通常会通过不同的接口与音频系统中的其他组件(如功放、扬声器、音频源等)进行连接。以汽车应用场景为例,以下是一些常见的接口类型分类及其介绍…...
arkTS:持久化储存UI状态的基本用法(PersistentStorage)
arkUI:持久化储存UI状态的基本用法(PersistentStorage) 1 主要内容说明2 例子2.1 持久化储存UI状态的基本用法(PersistentStorage)2.1.1 源码1的相关说明2.1.1.1 数据存储2.1.1.2 数据读取2.1.1.3 动态更新2.1.1.4 显示…...
css—动画
一、背景 本文章是用于解释上一篇文章中的问题,如果会动画的小伙伴就不用再次来看了,本文主要讲解一下动画的设定规则,以及如何在元素中添加动画,本文会大篇幅的讲解一下,动画属性。注意,这是css3的内容&am…...
YOLO系列论文综述(从YOLOv1到YOLOv11)【第12篇:YOLOv9——可编程梯度信息(PGI)+广义高效层聚合网络(GELAN)】
YOLOv9 1 摘要2 改进点3 网络架构 YOLO系列博文: 【第1篇:概述物体检测算法发展史、YOLO应用领域、评价指标和NMS】【第2篇:YOLO系列论文、代码和主要优缺点汇总】【第3篇:YOLOv1——YOLO的开山之作】【第4篇:YOLOv2—…...
【ETCD】etcd简单入门之基础操作基于etcdctl进行操作
这里将使用etcdctl命令行工具来进行演示, 1、使用put命令向etcd写入kv对 使用etcdctl put命令来设置键值对。put命令接受两个参数:键和值 使用方法: NAME:put - Puts the given key into the storeUSAGE:etcdctl put [options] <key&g…...
第六届国际科技创新(IAECST 2024)暨第四届物流系统与交通运输(LSTT 2024)
重要信息 会议官网:www.lstt.org 大会时间:2024年12月6-8日 大会地点:中国-广州 简介 第六届国际科技创新暨第四届物流系统与交通运输国际(LSTT 2024)将于2024年12月6-8日在广州举办,这是一个集中探讨…...
20241127 给typecho文章编辑附件 添加视频 图片预览
Typecho在写文章时,如果一次性上传太多张图片可能分不清哪张,因为附件没有略缩图,无法实时阅览图片,给文章插入图片时很不方便。 编辑admin/file-upload.php 大约十八行的位置 一个while 循环里面,这是在进行html元素更新操作,在合…...
投资理财网站建设规划书/重庆网站优化排名推广
P2341 [HAOI2006]受欢迎的牛 题目描述 每头奶牛都梦想成为牛棚里的明星。被所有奶牛喜欢的奶牛就是一头明星奶牛。所有奶 牛都是自恋狂,每头奶牛总是喜欢自己的。奶牛之间的“喜欢”是可以传递的——如果A喜 欢B,B喜欢C,那么A也喜欢C。牛栏里…...
wordpress 主题文件夹/网站推广100种方法
SQL Server中,如果目标表存在:insert into 目标表 select * from 原表;SQL Server中,,如果目标表不存在:select * into 目标表 from 原表;Oracle中,如果目标表存在:insert into 目标表 select * from 原表;…...
网站标题的写法/常州seo招聘
题库来源:安全生产模拟考试一点通公众号小程序 G3锅炉水处理报名考试考前必练!安全生产模拟考试一点通每个月更新G3锅炉水处理考试报名题目及答案!多做几遍,其实通过G3锅炉水处理证考试很简单。 1、【多选题】甲基橙指示剂在pH&…...
网站维护专业/网店推广费用多少钱
import Vue from vue import App from ./App import router from ./router import axios from axios Vue.config.productionTip false Vue.prototype.$http axios;...
b2c网站建设策略/推广公司运营模式
原标题:Java Restful API 文档生成工具 smart-doc | 软件推介授权协议:Apache-2.0开发语言:Java软件作者:上官胡闹背景在当今各种盛行的前后端分离、restful service开发过程中,接口文档是必不 可少的。对于前后端分离…...
北京建设教育协会官方网站/百度直播平台
除了Redis,还有哪些组件可用 redis:主业是一个缓存数据库(存储key-value),性能非常好,响应快,低延时。还能实现分布式锁,还能实现发布-订阅功能,我们可以订阅上几个通道…...