Flutter项目编译到鸿蒙模拟器报错

因为适配鸿蒙的Flutter 3.27不支持在Mac x86模拟器上运行,

所以,就打开了满是灰尘的Windows电脑,搞好了环境,运行后,报错如下: 

> hvigor Finished :entry:default@CompileArkTS... after 29 s 342 ms 
> hvigor Finished :entry:default@GeneratePkgModuleJson... after 6 ms 
> hvigor Finished :entry:default@PackageHap... after 4 s 191 ms 
> hvigor ERROR: Failed :entry:default@SignHap... 
> hvigor ERROR: Tools execution failed.
06-13 09:38:19 ERROR - hap-sign-tool: error: Invalid CEN header (invalid zip64 extra data field size)
	 Detail: Please check the message from tools.
> hvigor ERROR: BUILD FAILED in 1 min 13 s 
ProcessException: The command failed with exit code 1
  Command: hvigorw assembleHap -p product=default -p buildMode=debug --no-daemon -s -p DART_DEFINES=Zmx1dHRlci5pbnNwZWN0b3Iuc3RydWN0dXJlZEVycm9ycz10cnVl -p DART_OBFUSCATION=false -p TRACK_WIDGET_CREATION=true -p TREE_SHAKE_ICONS=false -p PACKAGE_CONFIG=D:\Android\MyProjects\hmtest\.dart_tool\package_config.json

我如果用DevEco打开ohos项目,编译运行到模拟器是没问题的。

在Flutter工程中,运行 flutter run 就一直报这个错。 

解决方法:

原因是我的jdk版本太新了,是22版本, 切换到 11版本,就解决了。

要在 Flutter 开发环境中运行鸿蒙模拟器并部署应用,需完成以下配置和操作步骤: ### 配置 DevEco Studio 和模拟器 1. 根据操作系统下载并安装最新版本的 **DevEco Studio**。这是鸿蒙应用开发的核心工具,支持模拟器管理、调试和部署等功能。 2. 如果没有鸿蒙真机,需要在 DevEco Studio 中安装模拟器。具体步骤可参考模拟器下载和安装指南,确保选择与目标设备匹配的系统镜像和硬件规格 [^1]。 ### 获取和配置鸿蒙版 Flutter SDK 1. 克隆国内鸿蒙社区维护的 Flutter SDK: ```bash git clone https://gitee.com/openharmony-sig/flutter_flutter.git cd flutter_flutter ``` 2. 切换到 `dev` 分支以获取最新的功能更新: ```bash git checkout -b dev origin/dev ``` 这个分支提供了对鸿蒙系统的适配支持,并且保持持续更新 [^3]。 3. 确保将克隆后的 Flutter SDK 添加到系统环境变量中,并验证是否成功切换为鸿蒙版 SDK: ```bash flutter --version ``` ### 集成环信 IM SDK(可选) 如果项目涉及即时通讯功能,可以在 `pubspec.yaml` 文件中添加依赖项: ```yaml dependencies: im_flutter_sdk: ^4.13.0 im_flutter_sdk_ohos: git: url: "https://github.com/easemob/im_flutter_sdk_oh.git" ref: 1.5.3 ``` 此外,还需修改 `useNormalizedOHMUrl` 模式以确保兼容性 [^2]。 ### 创建并运行 Flutter 项目 1. 使用鸿蒙版 Flutter SDK 创建新项目: ```bash flutter create my_harmonyos_app cd my_harmonyos_app ``` 2. 在 `lib/main.dart` 中编写或修改代码以适配鸿蒙特性,例如推送通知或设备特定的功能。 3. 连接 DevEco Studio 启动的鸿蒙模拟器- 确保模拟器已启动并在设备列表中可见: ```bash flutter devices ``` - 如果模拟器未自动识别,可以手动配置连接。 4. 构建并部署 Flutter 应用至模拟器: ```bash flutter run ``` 此命令会自动编译应用并将 APK 或 HAR 包安装到当前连接的模拟器上,同时启动调试会话。 ### 调试与优化 - 使用 DevEco Studio 提供的调试工具进行性能分析、日志查看以及界面布局检查。 - 如果遇到兼容性问题,建议查阅官方文档或社区资源,调整 Flutter 引擎与鸿蒙系统的交互逻辑。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值