zzgxx
zzgxx
  • 发布:2025-08-25 14:28
  • 更新:2025-09-10 17:51
  • 阅读:173

【报Bug】运行到安卓手机自定义基座报错

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 11

HBuilderX类型: 正式

HBuilderX版本号: 4.66

手机系统: Android

手机系统版本号: Android 15

手机厂商: vivo

手机机型: iqoo neo 9spro+

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

自定义基座安卓报错,HBuilderX和uniapp 更新4.76之后出现这个问题,切换回4.75和4.66依旧报错,更新前无报错,uniapp已回退旧版4.66依旧报错

预期结果:

正常编译运行

实际结果:

09:23:25.322 项目 xxx 开始编译
09:23:26.629 4.66
09:23:26.629 请注意运行模式下,因日志输出、sourcemap以及未压缩源码等原因,性能和包体积,均不及发行模式。
09:23:26.740 正在编译中...
09:23:27.129 ​Browserslist: caniuse-lite is outdated. Please run:
09:23:27.129 npx update-browserslist-db@latest
09:23:27.129 Why you should do it regularly: https://github.com/browserslist/update-db#readme​
09:23:57.230 [警告⚠] uni_modules\lime-echart\static\echarts.min.js 文件体积超过 500KB,已跳过压缩以及 ES6 转 ES5 的处理,手机端使用过大的js库影响性能。
09:24:05.242 项目 xxx 编译成功。
09:24:06.224 手机端调试基座版本号为4.0.0, 版本号相同,跳过基座更新
09:24:06.694 正在建立手机连接...
09:24:08.719 项目 xxx 编译成功。
09:24:08.750 Module build failed (from ./node_modules/@dcloudio/uni-cli-shared/lib/uts/uts-loader.js):
09:24:08.750 TypeError: bindings.bundleKotlin is not a function
09:24:08.750 at bundleKotlin (D:\WWW\xxx\node_modules@dcloudio\uts\dist\api.js:66:10)
09:24:08.750 at bundle (D:\WWW\xxx\node_modules@dcloudio\uts\dist\index.js:23:39)
09:24:08.750 at compile (D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\kotlin.js:441:26)
09:24:08.750 at Object.runKotlinDev [as runDev] (D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\kotlin.js:136:27)
09:24:08.750 at Object.compile (D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\index.js:349:77)
09:24:08.750 正在同步手机端程序文件...
09:24:08.923 已停止运行...

bug描述:

VUE2CLI 项目
标准基座安卓可以正常运行
自定义基座IOS可以正常运行
WEB可以正常运行
自定义基座安卓报错,HBuilderX和uniapp 更新4.76之后出现这个问题,切换回4.75和4.66依旧报错,更新前无报错,uniapp已回退旧版4.66依旧报错

原本报错如下
13:55:31.127 项目 xxx 开始编译
13:55:32.899 4.66
13:55:32.899 请注意运行模式下,因日志输出、sourcemap以及未压缩源码等原因,性能和包体积,均不及发行模式。
13:55:33.044 正在编译中...
13:55:34.126 uni-app 有新版本发布,请执行 npx @dcloudio/uvm@latest 更新,更新日志详见:https://download1.dcloud.net.cn/hbuilderx/changelog/4.76.2025082103.html
13:56:02.596 [警告⚠] uni_modules\lime-echart\static\echarts.min.js 文件体积超过 500KB,已跳过压缩以及 ES6 转 ES5 的处理,手机端使用过大的js库影响性能。
13:56:10.982 项目 xxx 编译成功。
13:56:11.331 运行方式:打开 HBuilderX, 导入 dist\dev\app-plus 运行。
13:56:12.265 检测到自定义基座有更新,正在更新自定义基座...
13:56:16.190 安装自定义基座App完成
13:56:16.848 正在建立手机连接...
13:56:17.382 项目 xxx 编译成功。
13:56:17.425 Module build failed (from ./node_modules/@dcloudio/uni-cli-shared/lib/uts/uts-loader.js):
13:56:17.425 Error: Cannot find module '@dcloudio/uts-win32-x64-msvc'
13:56:17.425 Require stack:
13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\uts\dist\binding.js
13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\uts\dist\api.js
13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\uts\dist\index.js
13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\code.js
13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\index.js
13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\uni-cli-shared\lib\uts\uts.js
13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\uni-cli-shared\lib\uts\resolver.js
13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\uni-cli-shared\lib\uts\index.js
13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\uni-cli-shared\lib\index.js
13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\vue-cli-plugin-uni\lib\env.js
13:56:17.425 - D:\WWW\xxx\node_modules@dcloudio\vue-cli-plugin-uni\index.js
13:56:17.425 - D:\WWW\xxx\node_modules@vue\cli-service\lib\Service.js
13:56:17.426 - D:\WWW\xxx\node_modules@vue\cli-service\bin\vue-cli-service.js
13:56:17.426 at Module._resolveFilename (node:internal/modules/cjs/loader:1225:15)
13:56:17.426 at Module._resolveFilename (D:\WWW\xxx\node_modules\module-alias\index.js:49:29)
13:56:17.426 at Module._load (node:internal/modules/cjs/loader:1051:27)
13:56:17.426 at Module.require (node:internal/modules/cjs/loader:1311:19)
13:56:17.426 at require (node:internal/modules/helpers:179:18)
13:56:17.426 at resolveNativeBinding (D:\WWW\xxx\node_modules@dcloudio\uts\dist\binding.js:99:12)
13:56:17.426 at Object.<anonymous> (D:\WWW\xxx\node_modules@dcloudio\uts\dist\binding.js:101:19)
13:56:17.426 at Module._compile (node:internal/modules/cjs/loader:1469:14)
13:56:17.426 at Module._extensions..js (node:internal/modules/cjs/loader:1548:10)
13:56:17.426 at Module.load (node:internal/modules/cjs/loader:1288:32)
13:56:17.426 at Module._load (node:internal/modules/cjs/loader:1104:12)
13:56:17.426 at Module.require (node:internal/modules/cjs/loader:1311:19)
13:56:17.426 at require (node:internal/modules/helpers:179:18)
13:56:17.426 at Object.<anonymous> (D:\WWW\xxx\node_modules@dcloudio\uts\dist\api.js:9:7)
13:56:17.426 at Module._compile (node:internal/modules/cjs/loader:1469:14)
13:56:17.426 at Module._extensions..js (node:internal/modules/cjs/loader:1548:10)
13:56:17.426 at Module.load (node:internal/modules/cjs/loader:1288:32)
13:56:17.426 at Module._load (node:internal/modules/cjs/loader:1104:12)
13:56:17.426 at Module.require (node:internal/modules/cjs/loader:1311:19)
13:56:17.427 at require (node:internal/modules/helpers:179:18)
13:56:17.427 at Object.<anonymous> (D:\WWW\xxx\node_modules@dcloudio\uts\dist\index.js:4:15)
13:56:17.427 at Module._compile (node:internal/modules/cjs/loader:1469:14)
13:56:17.427 at Module._extensions..js (node:internal/modules/cjs/loader:1548:10)
13:56:17.427 at Module.load (node:internal/modules/cjs/loader:1288:32)
13:56:17.427 at Module._load (node:internal/modules/cjs/loader:1104:12)
13:56:17.427 at Module.require (node:internal/modules/cjs/loader:1311:19)
13:56:17.427 at require (node:internal/modules/helpers:179:18)
13:56:17.427 at parseInterfaceTypes (D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\code.js:301:23)
13:56:17.427 at genProxyCode (D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\code.js:30:27)
13:56:17.427 at Object.compile (D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\index.js:162:41)
13:56:17.427 at compilePlugin (D:\WWW\xxx\node_modules@dcloudio\uni-cli-shared\lib\uts\uts-loader.js:176:21)
13:56:17.427 at runNextTicks (node:internal/process/task_queues:60:5)
13:56:17.427 at process.processTimers (node:internal/timers:516:9)
13:56:17.624 已停止运行...

安装 依赖 ‘@dcloudio/uts-win32-x64-msvc’ 后报错如下

09:23:25.322 项目 xxx 开始编译
09:23:26.629 4.66
09:23:26.629 请注意运行模式下,因日志输出、sourcemap以及未压缩源码等原因,性能和包体积,均不及发行模式。
09:23:26.740 正在编译中...
09:23:27.129 ​Browserslist: caniuse-lite is outdated. Please run:
09:23:27.129 npx update-browserslist-db@latest
09:23:27.129 Why you should do it regularly: https://github.com/browserslist/update-db#readme​
09:23:57.230 [警告⚠] uni_modules\lime-echart\static\echarts.min.js 文件体积超过 500KB,已跳过压缩以及 ES6 转 ES5 的处理,手机端使用过大的js库影响性能。
09:24:05.242 项目 xxx 编译成功。
09:24:06.224 手机端调试基座版本号为4.0.0, 版本号相同,跳过基座更新
09:24:06.694 正在建立手机连接...
09:24:08.719 项目 xxx 编译成功。
09:24:08.750 Module build failed (from ./node_modules/@dcloudio/uni-cli-shared/lib/uts/uts-loader.js):
09:24:08.750 TypeError: bindings.bundleKotlin is not a function
09:24:08.750 at bundleKotlin (D:\WWW\xxx\node_modules@dcloudio\uts\dist\api.js:66:10)
09:24:08.750 at bundle (D:\WWW\xxx\node_modules@dcloudio\uts\dist\index.js:23:39)
09:24:08.750 at compile (D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\kotlin.js:441:26)
09:24:08.750 at Object.runKotlinDev [as runDev] (D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\kotlin.js:136:27)
09:24:08.750 at Object.compile (D:\WWW\xxx\node_modules@dcloudio\uni-uts-v1\dist\index.js:349:77)
09:24:08.750 正在同步手机端程序文件...
09:24:08.923 已停止运行...

2025-08-25 14:28 负责人:DCloud_HB_Gml 分享
已邀请:
DCloud_UNI_FengXY

DCloud_UNI_FengXY

确保自己升级的时候,没有缺少安装@dcloudio/uts-win32-x64-msvc依赖

  • zzgxx (作者)

    升级时没有自动安装改依赖,报错上面的,手动安装@dcloudio/uts-win32-x64-msvc后报错下面的

    2025-09-02 14:46

  • DCloud_UNI_FengXY

    回复 zzgxx: 确保package.json所有@dcloudio开头的包版本号都一致

    2025-09-03 13:09

  • zzgxx (作者)

    回复 DCloud_UNI_FengXY: "dependencies": {

    "@dcloudio/uni-app": "2.0.2-4070620250821001",

    "@dcloudio/uni-app-plus": "2.0.2-4070620250821001",

    "@dcloudio/uni-h5": "2.0.2-4070620250821001",

    "@dcloudio/uni-i18n": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-360": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-alipay": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-baidu": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-harmony": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-jd": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-kuaishou": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-lark": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-qq": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-toutiao": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-vue": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-weixin": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-xhs": "2.0.2-4070620250821001",

    "@dcloudio/uni-quickapp-native": "2.0.2-4070620250821001",

    "@dcloudio/uni-quickapp-webview": "2.0.2-4070620250821001",

    "@dcloudio/uni-stacktracey": "2.0.2-4070620250821001",

    "@dcloudio/uni-stat": "2.0.2-4070620250821001",

    "@dcloudio/uni-ui": "^1.5.7",

    "@fingerprintjs/fingerprintjs": "^4.6.2",

    "@qiun/ucharts": "^2.5.0-20230101",

    "@vue/shared": "^3.0.0",

    "core-js": "^3.8.3",

    "crypto-js": "^4.2.0",

    "dplayer": "^1.27.1",

    "flyio": "^0.6.2",

    "hls.js": "^1.6.0",

    "js-md5": "^0.8.3",

    "uni-simple-router": "^2.0.7",

    "vconsole": "^3.15.1",

    "vue": ">= 2.6.14 < 2.7",

    "vuex": "^3.2.0"

    },

    "devDependencies": {

    "@dcloudio/types": "^3.3.2",

    "@dcloudio/uni-automator": "2.0.2-4070620250821001",

    "@dcloudio/uni-cli-i18n": "2.0.2-4070620250821001",

    "@dcloudio/uni-cli-shared": "2.0.2-4070620250821001",

    "@dcloudio/uni-helper-json": "*",

    "@dcloudio/uni-migration": "2.0.2-4070620250821001",

    "@dcloudio/uni-template-compiler": "2.0.2-4070620250821001",

    "@dcloudio/uni-uts-v1": "3.0.0-alpha-4060720250515001",

    "@dcloudio/vue-cli-plugin-hbuilderx": "2.0.2-4070620250821001",

    "@dcloudio/vue-cli-plugin-uni": "2.0.2-4070620250821001",

    "@dcloudio/vue-cli-plugin-uni-optimize": "2.0.2-4070620250821001",

    "@dcloudio/webpack-uni-mp-loader": "2.0.2-4070620250821001",

    "@dcloudio/webpack-uni-pages-loader": "2.0.2-4070620250821001",

    "@vue/cli-plugin-babel": "~5.0.0",

    "@vue/cli-service": "~5.0.0",

    "babel-plugin-import": "^1.11.0",

    "cross-env": "^7.0.2",

    "eslint": "^6.8.0",

    "eslint-plugin-vue": "^6.2.2",

    "jest": "^25.4.0",

    "less": "^4.2.0",

    "less-loader": "^11.1.3",

    "postcss-comment": "^2.0.0",

    "prettier": "^2.5.0",

    "sass": "1.69.1",

    "sass-loader": "10.1.1",

    "stylelint": "^13.13.1",

    "stylelint-config-prettier": "^8.0.2",

    "stylelint-config-standard-less": "^2.0.0",

    "stylelint-less": "^2.0.0",

    "uni-read-pages": "^1.0.5",

    "vue-eslint-parser": "^7.6.0",

    "vue-template-compiler": ">= 2.6.14 < 2.7"

    },

    2025-09-03 14:47

  • zzgxx (作者)

    回复 DCloud_UNI_FengXY: 需要把@dcloudio/uni-uts-v1改成2.0.2-4070620250821001吗

    2025-09-03 14:47

  • zzgxx (作者)

    回复 DCloud_UNI_FengXY: "dependencies": {

    "@dcloudio/uni-app": "2.0.2-4070620250821001",

    "@dcloudio/uni-app-plus": "2.0.2-4070620250821001",

    "@dcloudio/uni-h5": "2.0.2-4070620250821001",

    "@dcloudio/uni-i18n": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-360": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-alipay": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-baidu": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-harmony": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-jd": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-kuaishou": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-lark": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-qq": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-toutiao": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-vue": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-weixin": "2.0.2-4070620250821001",

    "@dcloudio/uni-mp-xhs": "2.0.2-4070620250821001",

    "@dcloudio/uni-quickapp-native": "2.0.2-4070620250821001",

    "@dcloudio/uni-quickapp-webview": "2.0.2-4070620250821001",

    "@dcloudio/uni-stacktracey": "2.0.2-4070620250821001",

    "@dcloudio/uni-stat": "2.0.2-4070620250821001",

    "@dcloudio/uni-ui": "^1.5.7",

    "@fingerprintjs/fingerprintjs": "^4.6.2",

    "@qiun/ucharts": "^2.5.0-20230101",

    "@vue/shared": "^3.0.0",

    "core-js": "^3.8.3",

    "crypto-js": "^4.2.0",

    "dplayer": "^1.27.1",

    "flyio": "^0.6.2",

    "hls.js": "^1.6.0",

    "js-md5": "^0.8.3",

    "uni-simple-router": "^2.0.7",

    "vconsole": "^3.15.1",

    "vue": ">= 2.6.14 < 2.7",

    "vuex": "^3.2.0"

    },

    "devDependencies": {

    "@dcloudio/types": "^3.3.2",

    "@dcloudio/uni-automator": "2.0.2-4070620250821001",

    "@dcloudio/uni-cli-i18n": "2.0.2-4070620250821001",

    "@dcloudio/uni-cli-shared": "2.0.2-4070620250821001",

    "@dcloudio/uni-helper-json": "*",

    "@dcloudio/uni-migration": "2.0.2-4070620250821001",

    "@dcloudio/uni-template-compiler": "2.0.2-4070620250821001",

    "@dcloudio/uni-uts-v1": "3.0.0-4070620250821001",

    "@dcloudio/vue-cli-plugin-hbuilderx": "2.0.2-4070620250821001",

    "@dcloudio/vue-cli-plugin-uni": "2.0.2-4070620250821001",

    "@dcloudio/vue-cli-plugin-uni-optimize": "2.0.2-4070620250821001",

    "@dcloudio/webpack-uni-mp-loader": "2.0.2-4070620250821001",

    "@dcloudio/webpack-uni-pages-loader": "2.0.2-4070620250821001",

    "@vue/cli-plugin-babel": "~5.0.0",

    "@vue/cli-service": "~5.0.0",

    "babel-plugin-import": "^1.11.0",

    "cross-env": "^7.0.2",

    "eslint": "^6.8.0",

    "eslint-plugin-vue": "^6.2.2",

    "jest": "^25.4.0",

    "less": "^4.2.0",

    "less-loader": "^11.1.3",

    "postcss-comment": "^2.0.0",

    "prettier": "^2.5.0",

    "sass": "1.69.1",

    "sass-loader": "10.1.1",

    "stylelint": "^13.13.1",

    "stylelint-config-prettier": "^8.0.2",

    "stylelint-config-standard-less": "^2.0.0",

    "stylelint-less": "^2.0.0",

    "uni-read-pages": "^1.0.5",

    "vue-eslint-parser": "^7.6.0",

    "vue-template-compiler": ">= 2.6.14 < 2.7"

    },

    修改一致后重新install 还是相同报错

    2025-09-03 14:56

  • zzgxx (作者)

    回复 DCloud_UNI_FengXY: 修改一致后重新install 还是相同报错 TypeError: bindings.bundleKotlin is not a function

    2025-09-05 14:49

  • DCloud_UNI_FengXY

    回复 zzgxx: 使用你贴的package.json依赖测试没有问题,可以node_modules/@dcloudio/uts/dist/api.js第10行,增加日志:console.log('bindings',bindings)

    然后运行编译,正常情况下应该打印类似这样的信息:

    13:18:10.921 bindings {

    13:18:10.921 bundleArkTS: [Function: bundleArkTS],

    13:18:10.921 bundleKotlin: [Function: bundleKotlin],

    13:18:10.921 bundleSwift: [Function: bundleSwift],

    13:18:10.921 parse: [Function: parse],

    13:18:10.921 toArkTS: [Function: toArkTS],

    13:18:10.921 toKotlin: [Function: toKotlin],

    13:18:10.921 toSwift: [Function: toSwift],

    13:18:10.921 getTargetTriple: [Function: getTargetTriple],

    13:18:10.921 KotlinTask: [Function: KotlinTask],

    13:18:10.921 BundleKotlinTask: [Function: BundleKotlinTask],

    13:18:10.921 ParseTask: [Function: ParseTask],

    13:18:10.921 BundleSwiftTask: [Function: BundleSwiftTask],

    13:18:10.921 ArkTsTask: [Function: ArkTsTask],

    13:18:10.921 BundleArkTsTask: [Function: BundleArkTsTask],

    13:18:10.921 SwiftTask: [Function: SwiftTask]

    13:18:10.921 }

    2025-09-09 13:20

  • zzgxx (作者)

    回复 DCloud_UNI_FengXY: 添加后我这边只有这三个。parse、toKotlin、getTargetTriple,具体报错在下面回复

    2025-09-09 13:52

  • 7***@qq.com

    请问解决了吗,我更新4.76之后安卓打包也是这个问题TypeError: bindings.bundleKotlin is not a function

    2025-09-14 21:58

zzgxx

zzgxx (作者) - zzgxx

添加打印后如图

  • DCloud_UNI_FengXY

    node_modules目录和package 的 lock.json文件都删除,重新install一下试试

    2025-09-09 16:40

  • zzgxx (作者)

    回复 DCloud_UNI_FengXY: 试过了,安装是用yarn

    2025-09-09 17:14

  • DCloud_UNI_FengXY

    回复 zzgxx: 查看一下node_modules中@dcloudio/uts-win32-x64-msvc的版本号是多少

    2025-09-09 21:31

  • zzgxx (作者)

    回复 DCloud_UNI_FengXY: "@dcloudio/uts-win32-x64-msvc": "3.0.2-4070620250821001",很奇怪,不会自动安装当前依赖的版本,需要自己手动选择

    2025-09-10 16:42

  • DCloud_UNI_FengXY

    回复 zzgxx: 没懂什么意思?正确的应该安装的是:3.0.0-4070620250821001

    2025-09-10 17:06

zzgxx

zzgxx (作者) - zzgxx

今天重新删除、安装后可以运行了,node_modules里面确实是3.0.0-4070620250821001

要回复问题请先登录注册