当前位置: 首页 > news >正文

Arkts进阶<应用间跳转 - 判断应用是否可访问>

当我们想要在拉起指定应用之前,判断当前应用是否在当前设备上已安装的时候,一种是直接调用拉起三方应用的方法:如DeepLinking中提到的使用openLink进行操作,如果设备没有安装应用,那么方法抛出异常。
另一种处理方式就是使用canOpenLink方法进行判断,下面针对canOpenLink进行讲解。

约束限制

1、在entry模块的module.json5文件中的querySchemes字段中,从API version 21开始,最多允许配置200个URL scheme。API version 20及之前的版本,最多允许配置50个URL scheme。
2、canOpenLink接口不支持判断以App Linking方式跳转的目标应用是否可访问。

接口说明

canOpenLink是bundleManager提供的支持判断目标应用是否可访问的接口。
匹配规则请参考显式Want与隐式Want匹配规则。

操作步骤

1、拉起方配置:
在entry模块的module.json5文件中配置querySchemes属性,声明想要查询的URL scheme。

{"module":{"querySchemes":["app1Scheme"]}}

调用canOpenLink接口。

try{let link='app1Scheme://test.example.com/home';let canOpen=bundleManager.canOpenLink(link);// 返回boolean值}catch(err){let message=(errasBusinessError).message;}

2、被拉起方配置:
在module.json5文件中配置uris属性。

{"module":{"abilities":[{"skills":[{// actions不能为空,actions为空会造成目标方匹配失败"actions":["ohos.want.action.home"],"uris":[{"scheme":"app1Scheme","host":"test.example.com","pathStartWith":"home"}]}]}]}}

这一章节很简单,主要是三方的module.json5的配置和拉起方的跳转uri要对应的上。也就是说如果拉起方的uri为:

let link='app1Scheme://';

那么被拉起方的配置要为:

"uris":[{"scheme":"app1Scheme"}]

在开发过程中因为三方的配置我们未知,所以可以参考Android或/iOS的跳转配置进行尝试配置。

http://www.jsqmd.com/news/559809/

相关文章:

  • MT5中文增强工具多场景落地:保险条款通俗化改写与消费者理解度提升实践
  • Umi-OCR突破界面限制:无界面集成与自动化工作流全指南
  • 无人艇实时非线性模型预测控制:轨迹跟踪与避碰的秘密武器
  • 毕业论文AI率20%以内达标攻略:从检测到通过全流程 - 我要发一区
  • 从百兆到千兆:RJ45网口背后的技术演进与协议优化全解析
  • 告别手动重标:基于Python脚本的Labelme数据集增强与JSON同步更新实战
  • Microsoft.Extensions.Caching.Hybrid性能优化:混合缓存策略完全解析
  • 西格列他钠是什么药?2026年双洛平降糖新药深度解析 - 品牌排行榜
  • 盘点2026年电源线包装机定制厂家,性价比高的在这里 - myqiye
  • 避坑指南:STM32F103驱动L9110s时常见的5个问题及解决方法
  • Kali Linux下Nessus 10.3.0安装避坑指南:从下载到首次扫描全流程
  • 2026本地教培GEO实操:大模型软文框架设计与留资防坑指南
  • RocketMQ Topic队列配置实战指南:从原理到最佳实践
  • 2026年杭州好用的讯灵AI推荐,获取公开邮箱及投诉联系电话 - 工业品网
  • C语言memcpy踩坑实录:内存重叠问题如何让你的代码崩溃(附memmove解决方案)
  • 专业指南:如何深度调优Ryujinx Switch模拟器实现60帧畅玩
  • YOLOv8增量训练保姆级避坑指南:冻结哪几层、学习率设多少、如何防过拟合
  • 好用的蓝莓混配基质品牌有哪些,广州地区可选择的多吗 - 工业设备
  • 2026年广东实力强的蓝莓混配基质厂家排名,这些靠谱品牌别错过 - 工业品网
  • QCustomPlot避坑指南:解决OpenGL加速下的闪屏和性能问题
  • 别墅装修进阶指南:西安家用电梯怎么选?晟瑞隆电梯,本土全流程服务标杆 - 深度智识库
  • OpenClaw安全防护:限制nanobot操作范围的5道防线
  • 告别动态注册!深入理解uniapp APP端与H5的组件注册差异(附main.js正确配置示例)
  • 2026年杭州选讯灵AI怎么样?其联系方式是啥 - 工业品牌热点
  • 从合并果子到修篱笆:用C++优先队列(priority_queue)搞定两道经典贪心题
  • 2026硫化氢/氰化氢报警仪产品推荐,固定式有毒气体报警仪性能与优势分析 - 品牌推荐大师
  • springboot+vue基于web的药店药品销售采购管理系统设计与实现
  • RuoYi-Vue3框架深度定制:灵活控制导航栏显隐的两种思路与避坑指南
  • 2026年全国做青少年科普展厅设计的靠谱企业推荐 - mypinpai
  • Understat:异步Python足球数据工具包 - 从数据获取到战术分析的全流程解决方案