【HarmonyOS 5】App Linking 应用间跳转详解

article/2025/7/19 8:59:56

目录

什么是 App Linking

使用场景

工作原理

如何开发

1.开通 App Linking

2.确定域名

3.服务端部署 applinking.json 文件

4.AGC绑定域名 

5.项目配置

6.组装聚合链接

7.解析聚合链接中的参数

其他

如何获取应用ID

如何在应用未安装时点击链接跳转至应用市场


什么是 App Linking

App Linking 是一款创建跨平台的深度聚合链接。通过为用户提供无缝的内容浏览体验,提升用户转化率。

  • 若用户已安装应用,点击点击链接后将直达应用内指定页面。
  • 若未安装,且已配置跳转应用市场,则跳转应用市场进行下载,待安装完成后用户首次打开应用,仍将跳转至该页面(可查看文章结尾如何配置)。如果未配置跳转应用市场,则自动打开浏览器加载对应的网页内容。
链接分享
扫码直达

使用场景

扫码直达、短信链接直达、社交平台卡片分享等场景。

工作原理

如何开发

开发前注意事项:使用 App Linking 需使用手动生成签名,自动签名将无法启动应用。

1.开通 App Linking

  • 登录AppGallery Connect,点击“我的项目”。
  • 在项目列表中打开对应项目。
  • 在左侧导航栏中选择“增长 > App Linking”,进入App Linking页面,点击“立即开通”。

2.确定域名

在配置前需确定域名,并确保域名完成https配置且能正常访问,后续在 AGC 与项目中需进行相关配置。

3.服务端部署 applinking.json 文件

在服务端部署 applinking.json 文件至指定目录,这里我们手动创建即可,确保能通过我们配置的域名地址:https://域名/.well-known/applinking.json 访问到 applinking 配置,如何获取应用ID可查看文章末尾。

{"applinking": {"apps": [{"appIdentifier": "你的应用id"}]}
}

4.AGC绑定域名 

在第 1 步开通 App Linking 后,选择“应用链接-创建”,填入域名地址进行发布,发布后,若第 3 步的配置文件可正常访问,等待几分钟后看到“成功”状态,则代表域名配置成功。若出现其他错误状态,需检查配置文件是否可被访问。

5.项目配置

进入项目的 entry 模块下的 module.json5 文件,新增 App Linking 的 skills 配置。

 示例代码:

{"entities": [// entities必须包含"entity.system.browsable""entity.system.browsable"],"actions": [// actions必须包含"ohos.want.action.viewData""ohos.want.action.viewData"],"uris": [{// scheme须配置为https"scheme": "https",// host须配置为关联的域名,替换为你AGC配置的域名"host": "www.eeeo.cc",// path可选,表示域名服务器上的目录或文件路径,例如www.example.com/path1中的path1// 如果应用只能处理部分特定的path,则此处应该配置应用所支持的path,避免出现应用不能处理的path链接也被引流到应用中的问题,替换为你的二级path,用于精确分流"path": "share"}],// domainVerify须设置为true"domainVerify": true
}

6.组装聚合链接

上述配置中,path用于精确分流,可用于指定二级地址,当前项目中配置的path为share,即当我们在鸿蒙设备中点击链接 https://www.eeeo.cc/share 后会优先启动应用,当我们需要传递参数时,可使用 ? + & 的形式拼接 KeyValue 即可。

https://www.eeeo.cc/share?pageId=2025&channel=web

7.解析聚合链接中的参数

通过聚合链接启动应用后,参数会进入到 Ability 的 onCreate 生命周期的 Want.uri 中,若应用已经启动,则会进入到 onNewWant 生命周期的 Want.uri 中。此时我们解析 uri 中的 KeyValue 即可。

示例代码如下:

import { AbilityConstant, UIAbility, Want } from '@kit.AbilityKit';
import { url } from '@kit.ArkTS';export default class EntryAbility extends UIAbility {onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void {// 从want中获取传入的链接信息。// 如传入的url为:https://www.example.com/programs?action=showalllet uri = want?.uri if (uri) {// 从链接中解析query参数,拿到参数后,可根据自己的业务需求进行后续的处理。let urlObject = url.URL.parseURL(want?.uri);let pageId = urlObject.params.get('pageId')let channel= urlObject.params.get('channel')      }}
}

其他

如何获取应用ID

 登录AppGallery Connect,点击“我的项目”,若已创建项目,可直接在首页查看到应用ID。若未创建项目,手动创建后则会自动生成。

如何在应用未安装时点击链接跳转至应用市场

项目的 module.json5 配置完 AppLinking 的 skills 后,等待应用上架,上架后前往 AGC 配置AppLinking 域名的地方,点击“直达应用市场”的选项,开启直达应用市场即可。


http://www.hkcw.cn/article/BDYwqpHuIW.shtml

相关文章

HarmonyOS Next 用户通知服务Notification Kit介绍与实战

1、用户通知服务Notification Kit介绍 Notification Kit(用户通知服务)为开发者提供本地通知发布通道,开发者可借助Notification Kit将应用产生的通知直接在客户端本地推送给用户,本地通知根据通知类型及发布场景会产生对应的铃声…

HarmonyOS NEXT(九) :图形渲染体系

HarmonyOS NEXT(九) :图形渲染体系 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,可以分享一下给大家。点击跳转到网站。 https://www.captainbed.cn/ccc 文章目录 HarmonyOS NEXT&#xff0…

Harmony生态适配:第三方库版本与系统版本的兼容管理

注:适用版本(Harmony OS NEXT / 5.0 / API 12 ) 鸿蒙文档给出该问题的解决方法的参考文档 安装HAP时提示“compatibleSdkVersion and releaseType of the app do not match the apiVersion and releaseType on the device.”-应用调试-DevEc…

鸿蒙心路旅程:HarmonyOS NEXT 心路旅程:技术、成长与未来

HarmonyOS NEXT 心路旅程:技术、成长与未来 技术的浪潮中,总有一些瞬间让人感到心潮澎湃。作为一名HarmonyOS NEXT开发者,我有幸成为这个时代科技创新的一部分。从最初的接触到深入学习、开发,以及如今规划未来的职业方向&#x…

知网研学原生鸿蒙版正式上线,打造AI学术服务的“超强大脑”

为更好地满足数智时代多元化学习场景的需求,给广大鸿蒙系统用户提供更加便捷智能的学习体验,知网研学鸿蒙原生应用版本(HarmonyOS版)正式上线,不仅为鸿蒙生态注入了强大的知识服务力量,也为近2000万知网研学…

【鸿蒙设备开发】OpenHarmony 轻量系统内核(LiteOS-M)【内核通信机制】

📌往期推文全新看点(文中附带最新鸿蒙全栈学习笔记) ①📖 鸿蒙应用开发与鸿蒙系统开发哪个更有前景? ②📖嵌入式开发适不适合做鸿蒙南向开发?看完这篇你就了解了~ ③📖 对于大前端…

【鸿蒙OH 5.0】OpenHarmony标准系统方案之瑞芯微RK3568移植案例(一)

📝往期推文全新看点(文中附带最新鸿蒙全栈学习笔记) 🚩 鸿蒙(HarmonyOS)北向开发知识点记录~ 🚩 鸿蒙(OpenHarmony)南向开发保姆级知识点汇总~ 🚩 鸿蒙应用…

【错误记录】Windows 中 DevEco Studio 真机调试无法连接设备 ( 低版本的 HarmonyOS 4.2.0 华为手机无法在 DevEco Studio 5.0.2 上真机调试 )

文章目录 一、错误记录二、问题排查三、解决方案 参考文档 : hdc(HarmonyOS Device Connector)文档设备连接后,无法识别设备的处理指导真机调试流程 一、错误记录 手机 使用的是 HarmonyOS 4.2.0 系统 ; 使用 HarmonyOS 的 hdc 工具 , 执行 …

原生鸿蒙应用市场开发者服务的技术解析:从集成到应用发布的完整体验

文章目录 引言一、鸿蒙原生应用的高效开发二、用户隐私保护:安全访问管理三、开发者实用工具:应用分析与A/B测试四、应用审核与分发:快速上线4.1 应用加密:保护代码安全4.2 自动化测试与检测前移:提升应用质量 五、结语…

迪士尼打架是否互殴还需细心调查 因拍照起争执

5月31日,有网友发布视频称,在上海迪士尼发生了一起冲突事件,一对情侣和一家三口发生了争执并动手。视频中可以看到双方在现场扭打,周围的人纷纷上前劝阻。6月1日,当地相关部门透露,这起事件发生在5月31日下午,地点是迪士尼疯狂动物城的一处拍照打卡点。双方因拍照问题产…

从奥运会到法网,郑钦文在“福地”取得跨年10连胜! 职业生涯首进法网八强

郑钦文在法网比赛中首次跻身八强,这是她第四次闯进大满贯八强。她在罗兰加洛斯取得了个人10连胜,也是中国选手时隔14年再次进入法网八强。比赛结束后,郑钦文躺倒在地庆祝这场历时2小时47分钟的胜利。比赛从首盘开始便陷入胶着,郑钦文与萨姆索诺娃展开了一场发球与接发球大战…

没有假球全是世仇 比赛第一,友谊第十四

“友谊第一,比赛第二”这句话在江苏省首届城市足球联赛中被玩出了新花样。“友谊第一,比赛第十四!”这样的口号让观众们捧腹大笑。这个被称为“苏超”的足球联赛最近爆火出圈,盐城现场吸引了22613名观众,网友纷纷表示这上座率堪比世界杯。“苏超”的观众数量已经超过了同期…

陈梦9岁开始领工资 妈妈管理至今

在最新一期《是女儿是妈妈》节目中,陈梦妈妈的一番话引起了网友们的广泛关注。陈梦9岁进入省队就开始领工资,而她的工资卡至今仍由妈妈保管。此外,陈梦妈妈还提到,陈梦每天的日常生活除了训练、吃饭和睡觉外,几乎没有其他时间,更没有精力去谈恋爱。陈梦是一位乒乓球世界冠…

记录下载安装sqlite3的过程

sqlite是一个数据库管理软件,今天用到了,记录下载安装的过程。 本地环境:Windows 10 家庭中文版。 下载网址:SQLite Download Page (一)下载下图中的两个文件: (二)自…

HarmonyOS NEXT 鸿蒙ArkTS 视频相关 视频播放、直播视频、XComponent和typeNode多方案实现画中画功能开发

一、简单的视频播放、直播播放 1. 使用meida中的avPlayer结合XComponent进行视频播放 如果是音频只需要一个路径就差不多了,这是音频HDI显示HDI,所以需要做以下几点: 应用从XComponent组件获取窗口SurfaceID,获取方式参考XCompon…

res-downloader-视频号下载,网络视频资源嗅探下载器

适用系统:Windows(含Win7)、macOS 和 Linux 系统 一、核心功能与特性 全平台资源支持 支持微信视频号、抖音、快手、小红书等短视频平台的无水印视频下载,同时兼容酷狗音乐、QQ音乐、微信小程序等音频和多媒体资源 1 8。覆盖视频、音频、图片、m3u8流媒体…

通义万相2.1:开启视频生成新时代

文章摘要:通义万相 2.1 是一款在人工智能视频生成领域具有里程碑意义的工具,它通过核心技术的升级和创新,为创作者提供了更强大、更智能的创作能力。本文详细介绍了通义万相 2.1 的背景、核心技术、功能特性、性能评测、用户反馈以及应用场景…

计算机视觉——基于树莓派的YOLO11模型优化与实时目标检测、跟踪及计数的实践

概述 设想一下,你在多地拥有多个仓库,要同时监控每个仓库的实时状况,这对于时间和精力而言,都构成了一项艰巨挑战。从成本和可靠性的层面考量,大规模部署计算设备也并非可行之策。一方面,大量计算设备的购…

AI赋能视频创作:蓝耘MaaS与海螺AI技术的深度融合

云边有个稻草人-CSDN博客 目录 一、蓝耘MaaS平台概述 (1)平台的模块化设计 (2)蓝耘MaaS的灵活性与扩展性 (3)蓝耘MaaS的安全性与隐私保护 二、海螺AI视频模型简介 (1)海螺AI的…

6条视频涨粉千万 心中之城回应质疑 新IP崛起之路

DY平台再次见证了一个涨粉神话。一部剧,六条视频,让账号「心中之城」在短短时间内涨粉1000万。从四月发布第一条视频至今,该账号已跃居DY热榜榜首。各大媒体纷纷报道这一现象。「心中之城」通过解说英剧《豺狼的日子》吸引了大量关注。该账号的运营者曾是电影圈知名账号毒舌…