文章底部有更新2025.01.23
我们原本的项目是用的Flutter开发, 所以,如果能成功编译到鸿蒙,那不就不需要再单独开发鸿蒙了。 于是,就开启了探索
经过了资料的搜索找到了这个开源仓库:
OpenHarmony-SIG/flutter_flutter
1、把它下载下来,然后仔细阅读项目的 ReadMe; 多读几遍;
README里面的鸿蒙套件链接下载申请, 不用点进去申请, 这个是写得比较早的了。 现在不需要申请, 可以直接去开发者网站下载。
2、按照README里的步骤把环境变量全部设置好, 确保
flutter doctor -v
运行后,正确配置后的效果,如图:
[✓] HarmonyOS toolchain - develop for HarmonyOS devices
• OpenHarmony Sdk at
/Users/apple/Desktop/Code/Harmony/command-line-tools/sdk, available api
versions has [12:HarmonyOS-NEXT-DB1]
• Ohpm version 5.0.2
• Node version v18.20.1
• Hvigorw binary at
/Applications/DevEco-Studio.app/Contents/tools/hvigor/bin/hvigorw
3、我用的是 API 12 , HarmonyOS NEXT DB1 。
按照上面的配置好后,可以新建一个项目, 然后就可以编译运行了。
4、运行后报错:(其实意思就是解析原生的so失败了,看一下libs目录就看到,只有一个arm64-v8a文件夹,所以,这个的原因就是还不支持x86平台)
[Info]App install path:/Users/apple/Desktop/Code/Harmony/HarmonyFlutter/wangharmony/ohos/./entry/build/default/outputs/default/entry-default-signed.hap, queuesize:0, msg:error: failed to install bundle. code:9568347 error: install parse native so failed.
AppMod finishError: Failed to install Hap again.
Error launching application on 127.0.0.1:5555.
然后去看了官方的回复,也是说暂时还不支持x86的模拟器运行。
5、然后,我就申请了华为的云调试,用鸿蒙NEXT云真机来调试了一下, 运行了一下Flutter的Demo,也成功运行了。
6、Demo 成功之后,就看Flutter的插件的支持情况了, 这里有一个第三方库适配的计划表 Flutter三方库适配计划
一起期待吧。
========================分隔线====================================
这个文章写得比较早了,如果你看到了这里,又是刚入门,
可以去下载这个flutter sdk,这个是 3.22.3 版本的
上面的文章那个还是低版本的。 可以直接选择用这个,使用方法都是一样的。