2026/8/21 19:43:04

如何使用混合开发 module

如何使用混合开发 module 如何使用混合开发 module本文介绍如何在ohos工程中引用flutter_module工程。ohos工程OpenHarmony原生工程可由Deveco Studio创建。flutter_module工程flutter子模块工程可由 flutter 命令行创建。环境准备使用 flutter_flutter配置相关的环境变量。使用 flutter_engine生成的engine产物。可选使用 DevEco-Studio 创建OpenHarmony原生工程 MyApplication。flutter_module工程相关操作# 如macOS\Linux环境下# 1. 创建 flutter子模块工程flutter create-tmodule my_flutter_module# 2. 编译生成 flutter_module.harcdmy_flutter_module flutter build har--debugcd-# 3. 复制 EntryAbility.ets 和 Index.ets 到 MyApplication 中cpmy_flutter_module/.ohos/entry/src/main/ets/entryability/EntryAbility.ets MyApplication/entry/src/main/ets/entryability/EntryAbility.etscpmy_flutter_module/.ohos/entry/src/main/ets/pages/Index.ets MyApplication/entry/src/main/ets/pages/Index.etsohos工程相关操作ohos工程引用flutter工程有两种使用方式。方式一ohos工程 引用 har 文件1. 复制 har 文件# 如macOS\Linux环境下cp-rmy_flutter_module/.ohos/har/* MyApplication/har/2. 修改 MyApplication/oh-package.json5{// ...dependencies:{// 如果工程级build-profile.json5文件的useNormalizedOHMUrl字段为true则oh-package.json5中依赖的包使用的别名需要和依赖包的oh-package.json5的name保持一致否则编译会报错ohos/flutter_module:har/flutter_module.har,ohos/flutter_ohos:har/flutter.har},overrides:{// 有冲突的依赖需要放到这里消除冲突ohos/flutter_ohos:har/flutter.har,plugin_xxx:har/plugin_xxx.har}}3. 使用 Deveco Studio 配置 MyApplication 的签名4. 运行 MyApplication方式二ohos工程 直接引用 flutter_module 源码1. 复制 flutter_module 源码 和 flutter相关文件# 如macOS\Linux环境下cp-rmy_flutter_module/.ohos/flutter_module MyApplication/mkdir-pMyApplication/flutter_module/src/main/resources/rawfilecp-rmy_flutter_module/.ohos/flutter_module/src/main/resources/rawfile/flutter_assets MyApplication/flutter_module/src/main/resources/rawfilecpmy_flutter_module/.ohos/har/flutter.har MyApplication/har/flutter.har2. 修改 MyApplication/build-profile.json5{// ...modules:[{name:entry,srcPath:./entry,targets:[{name:default,applyToProducts:[default]}]},// 以下为新增内容{name:flutter_module,srcPath:./flutter_module,targets:[{name:default,applyToProducts:[default]}]}]}3. 修改 MyApplication/oh-package.json5{// ...dependencies:{flutter_module:./flutter_module,ohos/flutter_ohos:./har/flutter.har},overrides:{ohos/flutter_ohos:./har/flutter.har}}4. 使用 Deveco Studio 配置 MyApplication 的签名5. 运行 MyApplication