HarmonyOS 鸿蒙Next flutter指令在不同平台运行结果不一致

发布于 1周前 作者 yuanlaile 来自 鸿蒙OS

HarmonyOS 鸿蒙Next flutter指令在不同平台运行结果不一致

有以下物料:
1. 两台mac电脑,A:x86架构,B:arm架构
2. flutter engine引擎编译产物(ohos_debug_unopt_arm64,ohos_release_arm64),两个电脑分别编译得出的产物
3. 用flutter_flutter项目中的flutter命令创建出来的项目,两个电脑分别创建出来的项目

执行以下命令:
flutter run --local-engine=ohos_debug_unopt_arm64,A电脑能成功执行,B电脑报错。
flutter run --local-engine=/Users/wt/ohos/flutter/engine/src/out/ohos_debug_unopt_arm64这个指令也不行
错误信息:[!] No Hmos SDK found. Try setting the HOS_SDK_HOME environment variable.
任务就中断了没有其他信息了,HOS_SDK_HOME我配置过是有效的,ide中用的离线sdk能识别出来

精炼一下问题就是:开发阶段想用flutter的hotReload功能用不了
 

2 回复
建议切换到dev分支,master分支的代码还是1月份的,可能有些bugfix还没有同步到,后续会定期合并dev分支的代码到master分支上。

目前dev分支上的hotreload是可用的

HarmonyOS 鸿蒙Next中Flutter指令在不同平台运行结果不一致的问题,可能由多种因素引起。以下是一些可能的原因分析:

  1. 平台差异:不同平台(如Android、iOS、Windows等)底层实现和系统API存在差异,这可能导致Flutter指令在这些平台上的行为表现不一致。

  2. 依赖库版本:Flutter及其依赖库在不同平台上的版本可能存在差异,导致相同的指令在不同平台上执行结果不同。

  3. 系统环境:不同设备的系统环境(如操作系统版本、硬件配置等)也会影响Flutter指令的执行结果。

  4. 代码兼容性:Flutter代码可能未充分考虑到平台差异,导致在某些平台上出现兼容性问题。

  5. 编译选项:编译Flutter应用时使用的选项(如调试模式、发布模式等)也可能影响指令的执行结果。

为了解决这个问题,你可以尝试以下方法:

  • 确保Flutter及其依赖库在所有平台上都使用相同的版本。
  • 检查并优化Flutter代码,以提高其跨平台兼容性。
  • 在不同平台上进行充分的测试,以识别和解决问题。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部