Hbuilder X 可以正常打包安卓和iOS的安装包;但直接运行到HarmonyOS 鸿蒙Next设备然后就会报错

Hbuilder X 可以正常打包安卓和iOS的安装包;但直接运行到HarmonyOS 鸿蒙Next设备然后就会报错

Hbuilder X 可以正常打包安卓和iOS的安装包;但直接运行到鸿蒙设备然后就会报错

【问题描述】:可以正常打包安卓和iOS的安装包;但直接运行到鸿蒙设备然后就会报错

就是项目在电脑上可以正常运行到浏览器,但是如果运行到鸿蒙设备上就会报错

没打包;就是直接运行到鸿蒙设备然后就会报错

怀疑是兼容性的问题;麻烦帮忙看看

【问题现象】:

cke_4725.png

previewableImage

previewableImage

【版本信息】:开发工具版本:    手机系统是5.1.0

previewableImage

【复现代码】:暂无

【尝试解决方案】:

1.把node_modules删了;重新npm install;重新下

2.注释isRenderableAttrValue注释

3.删除node_modules;还有那个json文件;然后再清除缓存


更多关于Hbuilder X 可以正常打包安卓和iOS的安装包;但直接运行到HarmonyOS 鸿蒙Next设备然后就会报错的实战教程也可以访问 https://www.itying.com/category-93-b0.html

12 回复

楼主您好,看报错应该是@dcloudio/uni-app这几个版本过低导致的,3.0.0-3061820230117001版本有点低了,建议您整体升级到最新版再试一下。

如果还是不行,是否方便将完整package.json发来一起看下。

更多关于Hbuilder X 可以正常打包安卓和iOS的安装包;但直接运行到HarmonyOS 鸿蒙Next设备然后就会报错的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


{
  "name": "my-project",
  "version": "1.0.0",
  "description": "A sample project",
  "main": "index.js",
  "scripts": {
    "start": "node index.js",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [
    "node",
    "javascript"
  ],
  "author": "Your Name",
  "license": "MIT",
  "dependencies": {
    "express": "^4.18.0",
    "lodash": "^4.17.21"
  },
  "devDependencies": {
    "nodemon": "^2.0.20"
  }
}

楼主您这边将@dcloudio/uni-*****,这几个版本统一升级到最新正式版,目前是:3.0.0-4030620241128001,然后再试一下。我这边试了是可以正常运行的,没有卡到@dcloudio\uni-app\dist\uni-app.es.js处,已经正常启动项目了。

还是报错;报错截图贴到评论区了,

我的node.js版本是18的;老师你那边node.js是多少的

cke_341.jpeg

这里:报错截图

node.js我下载的是最新版本:Node.js v22.21.0

cke_183.png

cke_264.png

有要学HarmonyOS AI的同学吗,联系我:https://www.itying.com/goods-1206.html

应该是uni-app版本较低导致,建议使用最新版本uni-app尝试一下,如果还是不行的话,看看知否与joun-5有关

Package json

package.json在这里

Hbuilder X目前对HarmonyOS Next的本地运行支持尚不完善,主要由于鸿蒙Next采用了纯HarmonyOS内核,与安卓运行时环境不兼容。打包安卓/iOS时调用的是标准跨平台引擎,而直接运行到鸿蒙设备需要特定的HarmonyOS适配模块。当前Hbuilder X可能缺少对应的鸿蒙设备调试插件或未集成方舟编译器工具链,导致应用在部署阶段出现架构验证失败。建议关注官方更新日志获取鸿蒙专项适配进展。

根据你描述的问题和截图,这是一个典型的HarmonyOS Next兼容性问题。HBuilder X在打包安卓和iOS时正常,但直接运行到HarmonyOS设备时出现错误,主要原因是HarmonyOS Next的底层架构与安卓存在差异。

从错误信息来看,问题可能出现在以下几个方面:

  1. JS引擎兼容性:HarmonyOS Next使用自研的ArkTS/ArkCompiler,与Chrome V8引擎存在差异。某些在安卓/iOS上正常的JavaScript代码可能在HarmonyOS上无法正确执行。

  2. API支持差异:HBuilder X可能调用了HarmonyOS尚未完全兼容的Web API或设备API。需要检查项目中使用的API在HarmonyOS上的支持情况。

  3. 构建配置问题:HBuilder X的HarmonyOS运行配置可能需要特定设置。建议检查manifest.json中的HarmonyOS相关配置,确保目标SDK版本与设备系统版本匹配。

建议的排查步骤:

  • 在HarmonyOS开发者模式下启用详细日志,查看具体的错误堆栈
  • 简化测试用例,排除第三方库的影响
  • 检查HBuilder X版本是否支持HarmonyOS Next
  • 确认设备开发者选项中的USB调试权限已开启

由于HarmonyOS Next是一个相对较新的系统,与现有开发工具的集成可能还需要进一步优化。建议关注HBuilder X的更新日志,看是否有针对HarmonyOS Next的专门支持。

回到顶部