鸿蒙笔记--skills

这一节了解一下skills,在鸿蒙ArkTS开发中,module.json5 文件是配置模块相关属性和信息的重要文件。其中,skills 配置属性通常用于定义当前模块(特别是UIAbility或ExtensionAbility组件)能够接收的Want特征集。以下是需要添加 skills 配置属性的几种情况:

定义入口能力:

当你的模块包含一个或多个UIAbility组件,并且这些组件需要作为应用的入口点时,你需要在 skills 中配置相应的入口能力。例如,配置 ohos.want.action.home 和 entity.system.home 来定义应用的主入口组件。

实现隐式跳转:

如果你的应用需要支持隐式跳转(即不直接指定目标Ability的URI,而是通过action和entity等特征来匹配目标Ability),你需要在源Ability的 skills中配置相应的action和entity。这样,当其他Ability或应用尝试通过隐式Want来启动你的Ability时,系统可以根据这些特征来匹配并启动正确的Ability。

接收外部调用:

如果你的模块中的某个Ability需要被其他应用或模块调用,你需要在该Ability的 skills 中配置相应的接收能力。这包括定义能够接收的action、entity以及可能的URI参数等。

实现特定功能:

某些特定的功能或场景可能需要通过配置 skills 来实现。例如,如果你的应用需要支持分享功能,你可能需要在相应的Ability中配置能够接收分享动作的 skills。

在添加 skills 配置属性时,你需要注意以下几点:

skills 是一个对象数组,每个对象可以包含 actions、entities 和 uris 等字段。

actions 字段用于定义Ability能够接收的动作集合,通常是一个字符串数组。

entities 字段用于定义Ability的类别信息,有助于在隐式跳转中过滤匹配的目标Ability。

uris 字段(如果需要)用于定义Ability能够接收的URI参数的模式或范围。

总的来说,skills 配置属性在鸿蒙ArkTS开发中扮演着重要的角色,它定义了模块中Ability的接收能力和隐式跳转规则。因此,在需要实现上述功能或场景时,你需要仔细配置 skills 属性以确保应用的正确性和稳定性。

相关推荐
滕州市燕猫虎计算机科技工作室个体工商户1 小时前
《Rust程序设计》学习笔记八:结构体
笔记·学习·rust·rust程序设计
志尊宝2 小时前
Vue3 零基础每日笔记(082):文件上传实战——el-upload 校验、自定义上传、头像预览
前端·javascript·vue.js·笔记·#javascript·#vue.js
后季暖3 小时前
电商问数笔记(2)
笔记
xier_ran4 小时前
【infra之路】AI 编译器学习笔记(二):重拾 C++——移动语义与 LLVM 风格的类型转换
人工智能·笔记·学习
星恒随风6 小时前
Linux库的底层原理:ELF文件格式、静态链接、程序加载、虚拟地址空间与GOT/PLT详解
linux·运维·笔记·学习·状态模式
罗西的思考6 小时前
[Agent Memory / 强化学习] MemPO源码学习笔记 — (7)— 混合机制
笔记·学习
Flutter_OH6 小时前
Flutter OHOS 三方库与插件适配相关问题
harmonyos
ClinicTech7 小时前
婴儿培养箱技术笔记:温控、报警与数据记录的三层架构
笔记
Flutter_OH7 小时前
Flutter OHOS ohos应用编译相关问题
harmonyos
xiaominngtongxue7 小时前
从一次接触网实训课看中职实训教学的组织逻辑
笔记