5.6 KiB
5.6 KiB
云端打包缓存问题解决方案
❌ 问题现象
云端打包失败,错误信息:
Cannot find a parameter with this name: errorMsg
at index.kt:119:95, 123:95, 239:75, 261:71
🔍 问题原因
本地代码已正确修改为 errorMsg,但云端打包使用了缓存的旧代码(仍然是 error)。
✅ 解决方案
已执行的修复
-
✅ 升级插件版本号
- 从
1.0.9→1.0.10 - 文件:
uni_modules/xwq-speech-to-text/package.json
- 从
-
✅ 添加时间戳注释
- 确保云端识别代码已更新
- 文件:
uni_modules/xwq-speech-to-text/utssdk/app-android/index.uts
🚀 重新打包步骤
步骤1:保存所有文件(重要!)
在 HBuilderX 中:
Ctrl + Shift + S (保存所有文件)
确保所有修改都已保存!
步骤2:清理本地缓存
在 HBuilderX 中:
运行 → 清理项目缓存
步骤3:清理云端缓存(关键!)
方法A:通过菜单(推荐)
右键点击项目 fronted_uniapp
→ 清理云端打包缓存
→ 等待清理完成
方法B:通过打包界面
发行 → 原生 App-云打包
→ 在打包界面找到 "清理缓存" 选项
→ 点击清理
方法C:手动删除云端缓存(如果上述方法无效)
在打包前勾选:
☑ 清除云端打包缓存
步骤4:重新云端打包
发行 → 原生 App-云打包
选择:Android
证书:云端证书或自有证书
等待打包(约 5-10 分钟)
步骤5:查看打包日志
重点确认:
✅ 使用插件版本:1.0.10(新版本)
✅ 编译 Kotlin 代码时无错误
✅ 找到参数 errorMsg(不再报错)
📋 验证修改是否正确
检查1:本地文件确认
打开文件查看:
文件:uni_modules/xwq-speech-to-text/utssdk/app-android/index.uts
应该看到:
// 第 73-74 行
errorMsg: '识别错误: ' + (e.message ?? '未知错误')
// 第 85 行
errorMsg: '识别超时'
// 第 290 行
errorMsg: '模型未初始化,请重新加载'
// 第 322 行
errorMsg: '语音识别启动失败: ' + (e.message ?? '未知错误')
绝对不应该看到 error:!
检查2:版本号确认
打开文件:
文件:uni_modules/xwq-speech-to-text/package.json
应该看到:
"version": "1.0.10"
检查3:前端代码确认
打开文件:
文件:pages/speech/speech.vue
在 517-522 行应该看到:
res.data?.errorMsg // 不是 res.data?.error
⚠️ 如果仍然失败
检查1:是否所有文件都保存了?
Ctrl + Shift + S (保存所有)
检查2:是否清理了云端缓存?
打包日志中应该显示:
云端缓存已清理
如果没有,重新执行步骤3。
检查3:查看完整错误日志
如果还是报错,点击错误日志链接:
错误日志: https://app.liuyingyong.cn/build/errorLog/...
查看完整的编译错误信息。
检查4:手动验证编译后的代码
如果有本地 Android 环境,可以查看:
unpackage/cache/.uts/...index.kt
确认编译后的 Kotlin 代码是否正确。
🔍 其他可能的问题
问题1:HBuilderX 版本过旧
解决: 更新到最新版本
帮助 → 检查更新
问题2:插件配置问题
检查文件:
uni_modules/xwq-speech-to-text/utssdk/app-android/config.json
确认配置正确。
问题3:Gradle 缓存问题
如果云端打包持续失败,可能是 Gradle 缓存问题。
解决: 联系 DCloud 技术支持清理服务器端缓存。
📊 打包预期时间
- 清理缓存: 1-2 分钟
- 云端编译: 5-10 分钟
- 总计: 约 10-15 分钟
注意: 如果使用了原生插件且需要下载三方库,可能需要 3-30 分钟。
✅ 成功标志
打包成功后,应该看到:
[HBuilder] 打包成功
[HBuilder] 下载地址: https://...xxx.apk
下载并安装 APK,测试语音识别功能正常。
🎯 快速检查清单
- 本地文件已修改(errorMsg,不是 error)
- 插件版本已升级(1.0.10)
- 所有文件已保存(Ctrl+Shift+S)
- 本地缓存已清理
- 云端缓存已清理(关键!)
- 重新云端打包
- 等待 10-15 分钟
- 查看打包日志确认成功
- 下载安装 APK
- 测试功能正常
💡 预防措施
以后修改插件代码后:
- ✅ 升级插件版本号(每次修改都升级)
- ✅ 保存所有文件
- ✅ 清理本地缓存
- ✅ 清理云端缓存
- ✅ 重新打包
不要跳过清理云端缓存这一步!
📞 获取帮助
如果按照上述步骤仍然失败:
-
查看完整错误日志
点击打包失败后的错误日志链接 -
联系 DCloud 技术支持
DCloud 论坛:https://ask.dcloud.net.cn/ 官方 QQ 群:见官网 -
检查插件是否有更新
插件市场:https://ext.dcloud.net.cn/ 搜索:xwq-speech-to-text
✅ 总结
核心问题
云端打包使用了缓存的旧代码。
关键操作
清理云端缓存 + 升级版本号
预期结果
打包成功,语音识别功能正常。
现在请按照步骤重新打包,应该能成功! 🚀
记住:每次修改插件代码后,一定要清理云端缓存! ⚠️