鸿蒙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

不知道为什么,这里app在模拟器中运行起来立马闪退。不知道是不是不支持模拟器运行,还是官方bug。运行日志如下,这里截取部分日志,也请知道原因的告知下,谢谢!

复制代码
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 文件

相关推荐
FrameNotWork6 小时前
HarmonyOS 与 Android 架构对比:从“写页面”到“设计系统”的差异
android·架构·harmonyos
supe_rNiu6 小时前
鸿蒙版本 wanAndroid客户端
安卓·harmonyos·鸿蒙
Swift社区8 小时前
HarmonyOS 文件权限管理实战详解(含可运行 Demo)
华为·harmonyos
Tassel_YUE8 小时前
OLT设备介绍
运维·华为
m0_685535089 小时前
显微镜检测面试问题
华为·光学·光学设计·光学工程·镜头设计
kirk_wang11 小时前
Flutter file_selector 库在鸿蒙(OHOS)平台的适配实践与深度解析
flutter·移动开发·跨平台·arkts·鸿蒙
搬砖的kk12 小时前
鸿蒙PC端C++开发实战:轻量级网络端口扫描工具
华为·harmonyos
马剑威(威哥爱编程)13 小时前
【鸿蒙学习笔记】基于HarmonyOS实现申请Push Token的功能
笔记·学习·harmonyos
不爱吃糖的程序媛13 小时前
鸿蒙PC端运行C语言程序:从编译到部署的全流程实战
c语言·华为·harmonyos
进击的前栈13 小时前
Flutter跨平台滚动视图scrollview_demo鸿蒙化使用指南
flutter·华为·harmonyos