HarmonyOS实战开发:module的切换

本文详细阐述了FA模型向Stage模型迁移时,开发者需关注的配置文件调整、模块标签变化以及关键技术点,如Ability配置、HAP包命名规则、权限请求等。对于鸿蒙开发者而言,这是一份实用的迁移教程,旨在帮助开发者顺利过渡到新的开发环境。
摘要由CSDN通过智能技术生成

从FA模型切换到Stage模型时,开发者需要将config.json文件module标签下的配置迁移到module.json5配置文件module标签下,具体差异见下列表格。

表1FA模型模块标签与Stage模型module标签差异对比

FA标签标签说明对应的Stage标签差异说明
mainAbility服务中心图标露出的ability,常驻进程拉起时会启动mainAbility。main元素标签名称变更,Stage模型不在使用.符号。
标识HAP的包结构名称,在应用内保证唯一性。/Stage模型使用name来保证应用唯一性。FA模型升级到Stage模型时,Stage模型的name需要和FA模型的包保持一致,否则会导致升级失败。
名字标识HAP的类名/FA模型中实际未使能,Stage模型没有与之对应的标签。
支持模式标识应用支持的运行模式,当前只定义了驾驶模式(drive)/Stage模型已废弃。
distro对象中的moduleName标识当前HAP的名称
distro对象中的moduleName
名字标签变更。
distro对象中的moduleType标识当前HAP的类型,包括两种类型:entry和feature。另外,如果表示HAR包类型,请设置为har类型标签变更。
distro对象中的installationFree标识当前HAP是否支持免安装特性安装免费标签变更。
distro对象中的deliveryWithInstall标识当前HAP是否支持随应用安装deliveryWithInstall标签变更。
元数据标识HAP的元信息元数据具体差异见表2。
能力标识当前模块内的所有Ability能力具体差异见表5。
JS系列标识基于ArkUI框架开发的JS模块集合,其中的每个元素代表一个JS模块的信息页面Stage模型在模块标签下保留该对象中的页面,window配置与页面的下一级。
快捷方式标识应用的快捷方式信息shortcut_config.json文件在开发视图的resources/base/profile下面定义配置文件shortcut_config.json。
reqPermissions标识应用运行时向系统申请的权限requestPermissions标签名称变更。
color模式标识应用自身的颜色模式/Stage模型不支持。
distroFilter标识应用的分发规则distributionFilter_config.json文件Stage模型在开发视图的resources/base/profile下面定义配置文件distributionFilter_config.json。
reqCapabilities标识运行应用程序所需的设备能力/Stage模型不支持。
共同事件公共事件common_event_config.json文件Stage模型在开发视图的resources/base/profile下面定义配置文件common_event_config.json。
entry主题此标签标识系统内部主题的关键字/Stage模型不支持。

表2FA模型metaData和Stage中metadata对比

FA标签标签说明对应的Stage模型标签差异对比
参数标识调用Ability时所有调用参数的元信息/Stage模型不支持。
结果标识Ability返回值的元信息/Stage模型不支持。
自定义数据该标签标识父级组件的自定义元信息,Parameters和results在application不可配元数据具体差异见表3。

表3FA模型metaData的customizeData和Stage中metadata对比

FA标签标签说明对应的Stage模型标签差异对比
名字标识数据项的键名称。字符串最大长度为255字节名字无。
价值标识数据项的值。字符串最大长度为255字节。价值无。
额外标识当前自定义数据的格式,取值为表示额外的资源值。资源标签变更。具体实例见表4。

表4FA模型metaData和Stage中metadata示例

FA模型示例Stage模型示例
“meteData”: {
“customizeDate”: [{
“name”: “label”,
“value”: “string”,
“extra”: “$string:label”,
}]
}
“meteData”: [{
“name”: “label”,
“value”: “string”,
“resource”: “$string:label”,
}]

表5FA模型和Stage中abilities差异对比

FA模型的abilities对象标签描述Stage模型中abilities对象标签差异对比
过程运行应用程序或Ability的进程名称/Stage模型不支持abilities中配置,在模块标签下配置process
URI标识Ability的统一资源标识符/Stage模型不支持
设备功能标识Ability运行时要求设备具有的能力,采用字符串数组的格式表示/Stage模型不支持
元数据该标签标识ability的元信息。元数据具体差异见表2
类型标识Ability的类型/Stage模型不支持
grantPermission 权限指定是否可以向Ability内任何数据授予权限/abilities内不支持;
读取权限标识读取Ability的数据所需的权限。该标签仅适用于data类型的Ability/abilities内不支持;在extensionAbilities标签中支持
写权限标识向Ability写数据所需的权限/abilities内不支持;在extensionAbilities标签中支持
config更改标识Ability关注的系统配置集合/Stage模型不支持
任务标识Ability指定的任务栈/Stage模型不支持
目标能力标识当前Ability重用的目标Ability/Stage模型不支持
multiUserShared标识Ability是否支持多用户状态进行共享,该标签仅适用于数据类型的Ability/Stage模型不支持
支持PipMode标识Ability是否支持用户进入PIP模式(用于在页面最上层悬浮小窗口,俗称“画中画”,常见于视频播放等场景)/Stage模型不支持
已启用表单标识Ability是否支持卡片(forms)功能/Stage模型不支持
形式标识服务卡片的属性。该标签仅当formsEnabled为“true”时,才能生效form_config.json文件Stage模型在开发视图的resources/base/profile下面定义配置文件form_config.json
src语言Ability开发语言的类型/Stage模型不支持
src路径该标签标识Ability对应的JS组件代码路径src条目该标签标识ability所对应的js代码路径。
uriPermission标识该Ability有权访问的应用程序数据/Stage模型不支持

最后

有很多小伙伴不知道学习哪些鸿蒙开发技术?不知道需要重点掌握哪些鸿蒙应用开发知识点?而且学习时频繁踩坑,最终浪费大量时间。所以有一份实用的鸿蒙(HarmonyOS NEXT)资料用来跟着学习是非常有必要的。 

这份鸿蒙(HarmonyOS NEXT)资料包含了鸿蒙开发必掌握的核心知识要点,内容包含了ArkTS、ArkUI开发组件、Stage模型、多端部署、分布式应用开发、音频、视频、WebGL、OpenHarmony多媒体技术、Napi组件、OpenHarmony内核、Harmony南向开发、鸿蒙项目实战等等)鸿蒙(HarmonyOS NEXT)技术知识点。

希望这一份鸿蒙学习资料能够给大家带来帮助,有需要的小伙伴自行领取,限时开源,先到先得~无套路领取!!

获取这份完整版高清学习路线,请点击→纯血版全套鸿蒙HarmonyOS学习资料

鸿蒙(HarmonyOS NEXT)最新学习路线

  •  HarmonOS基础技能

  • HarmonOS就业必备技能 
  •  HarmonOS多媒体技术

  • 鸿蒙NaPi组件进阶

  • HarmonOS高级技能

  • 初识HarmonOS内核 
  • 实战就业级设备开发

有了路线图,怎么能没有学习资料呢,小编也准备了一份联合鸿蒙官方发布笔记整理收纳的一套系统性的鸿蒙(OpenHarmony )学习手册(共计1236页)鸿蒙(OpenHarmony )开发入门教学视频,内容包含:ArkTS、ArkUI、Web开发、应用模型、资源分类…等知识点。

获取以上完整版高清学习路线,请点击→纯血版全套鸿蒙HarmonyOS学习资料

《鸿蒙 (OpenHarmony)开发入门教学视频》

《鸿蒙生态应用开发V2.0白皮书》

图片

《鸿蒙 (OpenHarmony)开发基础到实战手册》

OpenHarmony北向、南向开发环境搭建

图片

 《鸿蒙开发基础》

  • ArkTS语言
  • 安装DevEco Studio
  • 运用你的第一个ArkTS应用
  • ArkUI声明式UI开发
  • .……

图片

 《鸿蒙开发进阶》

  • Stage模型入门
  • 网络管理
  • 数据管理
  • 电话服务
  • 分布式应用开发
  • 通知与窗口管理
  • 多媒体技术
  • 安全技能
  • 任务管理
  • WebGL
  • 国际化开发
  • 应用测试
  • DFX面向未来设计
  • 鸿蒙系统移植和裁剪定制
  • ……

图片

《鸿蒙进阶实战》

  • ArkTS实践
  • UIAbility应用
  • 网络案例
  • ……

图片

 获取以上完整鸿蒙HarmonyOS学习资料,请点击→纯血版全套鸿蒙HarmonyOS学习资料

总结

总的来说,华为鸿蒙不再兼容安卓,对中年程序员来说是一个挑战,也是一个机会。只有积极应对变化,不断学习和提升自己,他们才能在这个变革的时代中立于不败之地。

  • 26
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值