uniapp ios 本地离线打包(攻略)

为什么要使用离线打包

首先我们需要知道 ios 本地离线打包是什么,为什么要使用离线打包,而不使用云打包,按官方的说法"App 离线开发工具包,即 App 离线 SDK,是把 App 运行环境(runtime)封装为原生开发调用接口,开发者可以在自己的 Android 及 iOS 原生开发环境配置工程使用,包括 Android 离线开发 SDK 及 iOS 离线开发 SDK",实际上好处有:

  1. 本地打包,不需等,有时候云打包人数多时你又着急上线时结果看到需要等 30 分钟(夸张的修辞手法,一般也就 5-6 分钟)后才能打包完成,而本地打包只需要生成一下 App 资源,然后进行打包即可
  2. 本地打包没有代码泄露等风险,并且不需要上传证书(虽然 uniapp 是官宣不会泄露,我也十分相信)

1. 基础资料

所谓"工欲善其事,必先利其器"所以我们需要先了解一些基础资料,这些资料可以帮助我们更好的理解 uniapp 的打包流程。

  1. uniapp 的离线打包流程
  2. ios 离线 sdk
  3. 导入 App 资源
  4. ios 模块配置
  5. 打包发行

以上的这些资料,基本可以完成离线打包,但还是会遇到一些问题,接下来会列举一些我遇到的问题

所需材料

  1. 一个审核通过的企业开发者 developer 账号
  2. 申请好证书和描述文件
  3. Xcode
  4. Hbuilderx

2. 插件配置问题

2.1 高德地图配置

  1. 文档
  2. 报错:当前运行的基座不包含原生插件[mapSearch],请在 manifest 中配置该插件,重新制作包括该原生插件的自定义运行基。uniapp 提供的离线基座在使用 uni.chooseLocation 进行位置选择时,离线基座提示不包含原生插件。 原因:文档下面还有一个说明配置,这些依赖库、系统库、依赖资源也需要配置

2.2 极光推送配置

  1. 文档
  2. 报错:当前运行的基座不包含原生插件[JG-JPush],请在 manifest 中配置该插件,重新制作包括该原生插件的自定义运行基座 按文档配置应该是没有问题的,但是还是遇到这种情况你需要看一下是否使用了模拟器运行的,使用真机运行即可

3. 配置 app 模块等问题

在运行中提示:打包时未添加 xxx 模块 请根据"如何配置模块/三方 SDK"配置即可

ios 更新跳转到 App Store 指定 app 链接

iTunes 提供了接口可查询到 app 在 App Store 上的信息

国外:itunes.apple.com/lookup?id=x...

国内:itunes.apple.com/cn/lookup?i...

xxx 为你的应用 ID,可在App Store Connect上 APP 信息查看

  1. 直接浏览器访问后会下载一个 txt 文件
  2. 打开搜索 trackViewUrl,获取到参数后的内容也就是一个 https 链接
  3. 将 https:// 替换为 itms:// 或者 itms-apps://
  4. 验证用 ios 的手机,在 safari 打开这个链接,会弹窗提示跳转到 App Store

遇到的问题

  1. 在 App 提交审核是提示:你的 App 包含 NSUserTrackingUsageDescription,这表示它可能会请求追踪用户。要提交以供审核,请更新你的 App 隐私答复以注明从此 App 中收集的数据将用于追踪目的,或者更新你的 App 二进制文件并上传新的构建版本。 原因:你在 app 中使用了如 JPush 极光、广告等,会出现此时你就需要去去更新 App 的隐私协议,然后重新打包上传即可
  1. 解决 App Store 上架提示您必须上传 12.9 英寸 iPad Pro(第 2 代)显示屏的截屏 原因:在项目中选择了多种平台,去项目中进行
  1. 在配置打包证书时报错:Provisioning profile "XX" doesn't include signing certificate "xx developer

    原因:在xcode中选择了手动配置证书和描述文件,但并不匹配所导致

    解决方案:blog.csdn.net/auccy/artic...

  2. 如果是在 product -> Archive 报错:Profile doesn't include the selected signing certificate.

    原因:如果在配置证书正常时,可能是钥匙串中有重复过期了证书

    解决方案:将钥匙串和本 app 有关的证书删除,重新导入后,重启 Xcode,重新打包即可

相关推荐
Code&Ocean1 小时前
iOS从Matter的设备认证证书中获取VID和PID
ios·matter·chip
/**书香门第*/1 小时前
Laya ios接入goole广告,开始接入 2
ios
web1508509664114 小时前
在uniapp Vue3版本中如何解决webH5网页浏览器跨域的问题
前端·uni-app
恋猫de小郭16 小时前
什么?Flutter 可能会被 SwiftUI/ArkUI 化?全新的 Flutter Roadmap
flutter·ios·swiftui
网安墨雨20 小时前
iOS应用网络安全之HTTPS
web安全·ios·https
福大大架构师每日一题1 天前
37.1 prometheus管理接口源码讲解
ios·iphone·prometheus
何极光1 天前
uniapp小程序样式穿透
前端·小程序·uni-app
User_undefined2 天前
uniapp Native.js 调用安卓arr原生service
android·javascript·uni-app
流氓也是种气质 _Cookie2 天前
uniapp blob格式转换为video .mp4文件使用ffmpeg工具
ffmpeg·uni-app
爱笑的眼睛112 天前
uniapp 极速上手鸿蒙开发
华为·uni-app·harmonyos