uni-app cli升级到3.96最新正式版本后 生成本地打包app资源时编译却显示是3.95 导致提示SDK版本不匹配

发布于 1周前 作者 bupafengyu 来自 Uni-App

uni-app cli升级到3.96最新正式版本后 生成本地打包app资源时编译却显示是3.95 导致提示SDK版本不匹配

操作步骤:

  1. 使用npx @dcloudio/uvm@latest更新cli项目到最新版本
    查看package.json ,依赖包更新到了3.96
  2. 运行->生成本地生成打包app资源
  3. 观察终端日志
  4. 使用对应正式版的离线SDK,离线打包
  5. 打开APP运行

预期结果:

APP 正常运行,不提示版本不兼容问题

实际结果:

Hbuilder是3.96,cli是3.96,但生成本地资源时,控制台输出的却是3.95
运行打包后的app,提示“本应用使用Hbuilder X3.95或对应cli版本编译,而手机端SDK版本是3.96,不匹配的版本可能造成应用异常”

bug描述:

cli升级到3.96最新正式版本,生成本地打包app资源时编译却显示是3.95,导致提示“本应用使用Hbuilder X3.95或对应cli版本编译,而手机端SDK版本是3.96,不匹配的版本可能造成应用异常”

信息类别 详细信息
产品分类 uniapp/App
PC开发环境 Windows
PC开发环境版本 10
HBuilderX类型 正式
HBuilderX版本 3.96
手机系统 Android
手机系统版本 Android 12
手机厂商 华为
手机机型 华为荣耀
页面类型 vue
vue版本 vue2
打包方式 离线
项目创建方式 HBuilderX

Image
Image
Image


1 回复

在 uni-app 升级到最新正式版本后,如果在生成本地打包 App 资源时,编译显示的是旧版本(如 3.95),导致 SDK 版本不匹配的问题,通常是由于以下几个原因引起的。以下是一些可能的解决方案:


1. 检查当前项目的 HBuilderX 版本

确保你使用的 HBuilderX 是最新版本。可以通过以下步骤检查和更新:

  • 打开 HBuilderX。
  • 点击顶部菜单栏的 帮助 > 检查更新
  • 如果有新版本,按照提示更新 HBuilderX 到最新版本。

2. 确认 uni-app 编译器版本

在项目中,uni-app 编译器的版本可能与 HBuilderX 的版本不一致。可以通过以下步骤确认和更新:

  • 打开项目的 package.json 文件。
  • 检查 dependenciesdevDependencies[@dcloudio](/user/dcloudio)/uni-app 的版本是否为 3.96
  • 如果不是最新版本,可以通过以下命令更新:
    npm install [@dcloudio](/user/dcloudio)/uni-app[@latest](/user/latest) --save-dev

3. 清理缓存并重新编译

有时缓存会导致版本不一致的问题。可以尝试以下步骤:

  • 删除项目根目录下的 node_modules 文件夹和 package-lock.json 文件。
  • 重新安装依赖:
    npm install
  • 重新编译项目:
    • 如果是 HBuilderX,点击 运行 > 运行到手机或模拟器
    • 如果是命令行,使用 npm run devnpm run build

4. 检查本地打包配置

如果你使用的是本地打包,确保本地打包工具(如 Android Studio 或 Xcode)的配置与 uni-app 的版本匹配:

  • 打开项目的 manifest.json 文件。
  • 检查 基础配置 中的 SDK 版本 是否为最新版本。
  • 如果需要更新 SDK,可以按照官方文档的指引更新本地开发环境。

5. 检查 HBuilderX 的 CLI 工具

如果你使用的是 HBuilderX 的 CLI 工具,确保 CLI 工具也是最新版本:

  • 打开终端,运行以下命令检查版本:
    hbx -v
  • 如果不是最新版本,可以通过以下命令更新:
    npm install -g [@dcloudio](/user/dcloudio)/hbuilderx
回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!