积分325 / 贡献0

提问1答案被采纳1文章22

[经验分享] Flutter适配OpenHarmony方案预研——创建(下) 原创

诚迈-陆志刚 显示全部楼层 发表于 2025-1-14 15:06:47
Flutter适配OpenHarmony方案预研——创建(下)

(文章已获得诚迈科技资深研发工程师-廖锦锐授权)


下载支持OpenHarmony的Flutter版本,仓库链接 https://gitee.com/openharmony-sig/flutter_flutter

下载支持OpenHarmony的flutter sdk,master分支相对稳定,dev不断在更新相比master拥有更多功能,下面是dev分支的clone命令

git clone -b dev git@gitee.com:openharmony-sig/flutter_flutter.git

完成后在环境变量用户变量path中添加对应下载路径D:\ohosflutter\flutter_flutter\bin  

下载jdk17并配置环境变量

JAVA_HOME = <JAVA_HOME path>

PATH=%JAVA_HOME%\bin

下载git在环境变量用户变量path中添加D:\application\Git\bin\cmd

配置flutter 国内镜像

在用户变量 新建flutter的国内镜像的变量名和变量值



配置HarmonyOS SDK和环境变量,我的电脑-属性-高级系统设置-环境变量-用户变量

点击新建 -输入对应的变量名和变量值-注意路径不要用空格


在对应的Deveco_Stdio安装路径下,环境变量中的用户变量path变量中追加 Node,ophm ,hvigor,hdc指令(可选)的路径


验证是否正确配置

1、打开cmd命令行窗口,输入flutter doctor –v

2、运行后,正确配置效果如图。确保flutter和HarmonyOS配置成功


创建工程 方式一 该方式只创建了ohos平台

flutter create --platforms ohos <projectName>

创建工程 方式二 该方式创建了移动端和桌面端的平台

flutter create  <projectName>


下载FlutterEngine构建产物(非必选项,不指定--local engine,默认是用云端的引擎)

Flutter工程构建依赖ohos_debug_unopt_arm64与ohos_release_arm64

FlutterTools指令运行参数中添加--local-engine字段来指定下载的engine:--local-engine=src/out/<engine产物目录\> ,

若不使用--local-engine来指定engine,默认使用云端最新版engine。 使用示例:

flutter build hap [--local-engine=/Users/admin/Documents/flutter_engine/src/out/ohos_debug_unopt_arm64]


engine本地路径必须带上src/out目录; 解压后,存放到一个目录(engine本地路径必须需带上src/out目录):

如:/Users/admin/Documents/flutter_engine/src/out

编译hap包

进入工程根目录编译hap包(可选release,debug,profile三个版本)

flutter build hap –release

编译产物路径

${projectName}/ohos/entry/build/default/outputs/default/entry-default-signed.hap

OpenHarmony真机运行Flutter项目

方式一

安装应用 hdc install [-r|-s] src ( src为应用安装包的文件名,具体到全路径)

hdc install D:\ohtest\flutter_ohos_demo\ohos\entry\build\default\outputs\default\entry-default-signed.hap

方式二

使用DevEcoStudio 选择设备为真机,在此之前需要在手机打开开发者选项,连接到手机后,点击启动。


©著作权归作者所有,转载或内容合作请联系作者

您尚未登录,无法参与评论,登录后可以:
参与开源共建问题交流
认同或收藏高质量问答
获取积分成为开源共建先驱

Copyright   ©2025  OpenHarmony开发者论坛  京ICP备2020036654号-3 |技术支持 Discuz!

返回顶部