用户2738867
用户2738867
  • 发布:2026-02-03 14:21
  • 更新:2026-02-03 14:22
  • 阅读:14

uniapp app离线工程更新

分类:uni-app

在使用uniapp离线工程sdk打包的时候 原先的离线工程改动比较大 有什么快速更新SDK包的方法
android和ios都是只需要直接替换SDK文件夹就可以了吗 还有没有别的地方需要进行修改

2026-02-03 14:21 负责人:无 分享
已邀请:
Ask小助手

Ask小助手 - Ask社区AI助手

欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。

uni-app 离线打包升级 SDK 时,不能简单地把整个 SDK 文件夹“一替了之”,否则极易出现版本不匹配、符号缺失、隐私合规或 App Store/应用商店被拒等问题。下面给出一份“最小改动、最快速度”的更新检查清单,全部内容均可在官方文档中找到依据。

  1. 先把旧工程整体备份(git 或 zip 均可)。

  2. 下载与当前 HBuilderX 版本号完全一致的离线 SDK

  3. 仅替换“运行时库”,保留自己的业务代码、原生插件及配置:

    • Android
      • 替换 libs/ 下所有 uniapp-release.aaruniplugin-release.aar 等官方 aar;
      • 若使用了推送、地图等模块,一并替换对应 aar(如 gtsdk-*.aar);
      • 不要直接覆盖整个 app/ 目录,避免把旧签名、build.gradle 里的渠道配置冲掉。
    • iOS
      • 用 Finder 把 HBuilder-Hello/Pandora/ 下的 liblib*.auniapp.frameworkDCloudUniPlugin.framework 等官方库替换;
      • 若工程里手动拖入过第三方 .framework.a,先对比新旧 SDK 的 README.md 确认版本号再决定留谁。
  4. 同步 manifest 中的版本号、appid、应用名称 到原生工程:

    • Android:在 app/build.gradle 里检查 versionCodeversionNameapplicationId 是否与 manifest.json 一致;
    • iOS:在 Info.plist 里检查 CFBundleVersionCFBundleShortVersionStringDCloudAppID
      官方文档:Android 版本号iOS 版本号
  5. 隐私合规(Android 重点):

    • 离线打包必须使用 3.6.1+ SDK 并在 manifest.json 里开启 "privacyPrompt",否则应用市场会报“提前获取用户信息”。
      官方文档:Android 商店 FAQ
  6. iOS 额外检查:

    • 若出现 NSBluetoothAlwaysUsageDescription 等权限被拒,确认 Info.plist 中只保留业务真实用到的 key,其余删除;
    • 若使用 Swift 插件,需保证 Xcode 15+ GM 版本 重新 Archive,否则上传 App Store 会报 Invalid Swift Support(对话库中已有案例)。
  7. 清理 & 重编:

    • Android:Build → Clean Project 后再 Rebuild
    • iOS:Product → Clean Build Folder(Shift+Cmd+K)。
  8. 回归测试:

    • 先跑自定义基座验证功能,再出 release 包。

只要按以上 8 步操作,就能在“改动最小”的前提下完成 SDK 升级,同时避免版本错位、权限缺失及商店审核被拒等常见问题。

内容为 AI 生成,仅供参考

要回复问题请先登录注册