OpenHarmony ArkTS工程目录结构(Stage模型)

一、应用工程结构

图片来源:OpenHarmony官网

AppScope > app.json5:应用的全局配置信息。

entry:OpenHarmony工程模块,编译构建生成一个HAP包。

src > main > ets:用于存放ArkTS源码。

src > main > ets > entryability:应用/服务的入口。

src > main > ets > pages:应用/服务包含的页面。

src > main > resources:用于存放应用/服务所用到的资源文件,如图形、多媒体、字符串、布局文件等。关于资源文件,详见资源文件的分类。

src > main > module.json5:模块配置文件。主要包含HAP的配置信息、应用/服务在具体设备上的配置信息以及应用/服务的全局配置信息。具体的配置文件说明,详见module.json5配置文件。

build-profile.json5:当前的模块信息 、编译信息配置项,包括buildOption、targets配置等。其中targets中可配置当前运行环境,默认为HarmonyOS。若需开发OpenHarmony应用,则需开发者自行修改为OpenHarmony。

hvigorfile.ts:模块级编译构建任务脚本,开发者可以自定义相关任务和代码实现。

oh_modules:用于存放三方库依赖信息。关于原npm工程适配ohpm操作,请参考历史工程手动迁移。

build-profile.json5:应用级配置信息,包括签名、产品配置等。

hvigorfile.ts:应用级编译构建任务脚本。

二、ArkTS应用卡片相关模块

图片来源:OpenHarmony官网 蛟龙腾飞公司提供

FormExtensionAbility:卡片扩展模块,提供卡片创建、销毁、刷新等生命周期回调。

FormExtensionContext:FormExtensionAbility的上下文环境,提供FormExtensionAbility具有的接口和能力。

formProvider:提供卡片提供方相关的接口能力,可通过该模块提供接口实现更新卡片、设置卡片更新时间、获取卡片信息、请求发布卡片等。

formInfo:提供了卡片信息和状态等相关类型和枚举。

formBindingData:提供卡片数据绑定的能力,包括FormBindingData对象的创建、相关信息的描述。

页面布局(Card.ets):提供声明式范式的UI接口能力。

ArkTS卡片特有能力:postCardAction用于卡片内部和提供方应用间的交互,仅在卡片中可以调用。

ArkTS卡片能力列表:列举了能在ArkTS卡片中使用的API、组件、事件、属性和生命周期调度。

卡片配置:包含FormExtensionAbility的配置和卡片的配置

在module.json5配置文件中的extensionAbilities标签下,配置FormExtensionAbility相关信息。

在resources/base/profile/目录下的form_config.json配置文件中,配置卡片(WidgetCard.ets)相关信息。

卡片目录

快照目录

图片来源:OpenHarmony官网 蛟龙腾飞公司提供

相关推荐
塞尔维亚大汉3 小时前
鸿蒙内核源码分析(忍者ninja篇) | 都忍者了能不快吗
源码·harmonyos
keepDXRcuriosity3 小时前
鸿蒙应用开发课设——鸿蒙青藤社
harmonyos·鸿蒙
kymjs张涛3 小时前
零一开源|前沿技术周报 #6
前端·ios·harmonyos
Georgewu14 小时前
【HarmonyOS】鸿蒙应用开发Text控件常见错误
harmonyos
Georgewu15 小时前
【HarmonyOS】富文本编辑器RichEditor详解
harmonyos
zhanshuo1 天前
鸿蒙应用调试与测试实战全指南:高效定位问题,性能优化必备技巧+实用代码示例
harmonyos
万少1 天前
2025中了 聊一聊程序员为什么都要做自己的产品
前端·harmonyos
幽蓝计划2 天前
HarmonyOS NEXT仓颉开发语言实战案例:动态广场
华为·harmonyos
万少2 天前
第五款 HarmonyOS 上架作品 奇趣故事匣 来了
前端·harmonyos·客户端
幽蓝计划2 天前
HarmonyOS NEXT仓颉开发语言实战案例:电影App
华为·harmonyos