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

相关推荐
youyin2 天前
HarmonyOS ArkUI 组件与自定义组件零基础:从搭页面到组件化开发
华为·harmonyos
HwJack202 天前
【HarmonyOS开发小实践】ArkTS 从 TypeScript 到方舟语言的演进
华为·harmonyos
张星河zen2 天前
4096卡、8EFLOPS、7.2T NPO:华为昇腾960超节点详解
华为·ai训练·ai推理·超节点·npo·昇腾960·hi-one
君赏2 天前
棉宇宙 Flutter 热更新是如何落地的
flutter
云运维笔记2 天前
华为设备IP地址配置全攻略
运维·网络·计算机网络·华为
威哥爱编程2 天前
HarmonyOS 7 星盾机密风控实战:设备风险因子端侧融合计算,可用不可见
harmonyos·arkts
恋猫de小郭2 天前
AndroidX 新增 Security State ,支持可编程的系统安全状态查询
android·前端·flutter
威哥爱编程2 天前
HarmonyOS 7 应用快启实战:关键资源预加载进内存,冷启告别白屏
华为·harmonyos·arkts
zihan5182 天前
自己做软件日记9/21 得到了一个良好的文件结构框架
后端·flutter·前端框架·android studio