内容提要
本文介绍了应用链接的两种方式:Deep Linking和App Linking。Deep Linking使用自定义scheme,但安全性较低;App Linking通过https和域名校验提高安全性。文章还提供了创建目标应用和拉起应用的步骤及代码示例。
关键要点
-
应用链接可以将用户引导至应用内特定位置或相关网页。
-
应用链接的格式为scheme://host[:port]/path。
-
应用链接分为Deep Linking和App Linking两种方式。
-
Deep Linking支持自定义scheme,但安全性较低,容易被仿冒。
-
App Linking使用https和域名校验机制,提高了安全性。
-
创建目标应用需要在module.json5配置文件中配置skills标签。
-
Deep Linking中的scheme取值支持自定义,不能为http、https或file。
-
拉起应用的作用是为了拉起目标应用,需在代码中传入目标应用的URL信息。
-
运行应用时,需先运行目标应用,然后再运行拉起应用以触发启动事件。
延伸解读
应用链接的安全性比较
在选择应用链接方式时,开发者需注意Deep Linking和App Linking的安全性差异。Deep Linking虽然灵活,但缺乏域名校验,容易被仿冒,适合对安全性要求不高的场景。而App Linking通过https和域名校验机制,能有效防止恶意应用的干扰,适合需要高安全性的应用场景。
配置目标应用的注意事项
在创建目标应用时,开发者需确保在module.json5配置文件中正确设置skills标签。特别是如果存在多个跳转场景,必须为每个场景创建独立的skill对象,以避免配置失效。此外,scheme的取值需遵循特定规则,避免使用http、https或file等前缀。
拉起应用的运行顺序
在实际运行拉起应用时,需先启动目标应用,然后再运行拉起应用。这一顺序确保目标应用已在系统中注册并可被调用,避免因未启动目标应用而导致的链接失败。开发者在测试时应特别注意这一点,以确保功能正常。
延伸问答
什么是应用链接?
应用链接是指可以将用户引导至应用内特定位置或相关网页的URL,格式为scheme://host[:port]/path。
Deep Linking和App Linking有什么区别?
Deep Linking支持自定义scheme但安全性较低,而App Linking使用https和域名校验机制,提高了安全性。
如何创建目标应用以支持应用链接?
需要在module.json5配置文件中配置skills标签,并创建独立的skill对象以支持被其他应用访问。
拉起应用的作用是什么?
拉起应用的作用是为了通过应用链接启动目标应用。
在Deep Linking中,scheme的取值有什么限制?
在Deep Linking中,scheme取值支持自定义,但不能为http、https或file。
如何在代码中实现应用链接的跳转?
在代码中使用openLink接口传入目标应用的URL信息,并配置相关选项以触发启动事件。