自学内容网 自学内容网

鸿蒙harmonyos next flutter混合开发之ohos工程引用 har 文件

  • 创建鸿蒙原生工程MyApplication。
  • 创建flutter  module,生成har文件,并且将flutter  module中.ohos文件entryability/EntryAbility.ets、pages/Index.ets分别替换MyApplication中的。
# 1. 创建 flutter子模块工程
flutter create -t module my_flutter_module
# 2. 编译生成 flutter_module.har
cd my_flutter_module
flutter build har --debug
cd -
# 3. 复制 EntryAbility.ets 和 Index.ets 到 MyApplication 中
cp my_flutter_module/.ohos/entry/src/main/ets/entryability/EntryAbility.ets MyApplication/entry/src/main/ets/entryability/EntryAbility.ets
cp my_flutter_module/.ohos/entry/src/main/ets/pages/Index.ets MyApplication/entry/src/main/ets/pages/Index.ets
  • 将上一步生成的har文件拷贝到原生工程中MyApplication/har/
cp -r my_flutter_module/.ohos/har/* MyApplication/har/
  • 修改原生工程MyApplication/oh-package.json5,
{
  "dependencies": {
    "@ohos/flutter_module": "./har/flutter_module.har",
    "@ohos/flutter_ohos": "file:./har/flutter.har"
  },
  "overrides": {
    "@ohos/flutter_ohos": "file:./har/flutter.har"
  }
}
  • 对原生工程MyApplication进行签名
  • 运行 MyApplication

        注意:由于没有真机,在模拟器运行会报如下错误。

Device info:emulator
Build info:emulator 5.0.0.65(SP73DEVC00E65R4P11log)
Fingerprint:f997680853fc6a9c5af3acd2878ed5936dc031867c36b8d1f7b42b8980fa8252
Module name:com.example.myapplication
Version:1.0.0
VersionCode:1000000
PreInstalled:No
Foreground:Yes
Timestamp:2024-10-01 20:34:34.447
Pid:17838
Uid:20020054
Process name:com.example.myapplication
Process life time:2s
Reason:Signal:SIGTRAP(TRAP_BRKPT)@0x0000007f96711dd0 
Fault thread info:
Tid:17879, Name:1.raster
#00 pc 00000000023d1dd0 /data/storage/el1/bundle/libs/arm64/libflutter.so(103fd5b90568edc09203e114faebbaedd8f359d3)

官方参考文档:ohos工程 引用 har 文件


原文地址:https://blog.csdn.net/majun2009/article/details/142672840

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!