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,重新打包即可

相关推荐
耶啵奶膘35 分钟前
uniapp-是否删除
linux·前端·uni-app
断墨先生7 小时前
uniapp—android原生插件开发(3Android真机调试)
android·uni-app
guai_guai_guai8 小时前
uniapp
前端·javascript·vue.js·uni-app
DisonTangor12 小时前
苹果发布iOS 18.2首个公测版:Siri接入ChatGPT、iPhone 16拍照按钮有用了
ios·chatgpt·iphone
- 羊羊不超越 -12 小时前
App渠道来源追踪方案全面分析(iOS/Android/鸿蒙)
android·ios·harmonyos
阿伟来咯~13 小时前
一些 uniapp相关bug
uni-app·bug
瑶琴AI前端17 小时前
uniapp组件实现省市区三级联动选择
java·前端·uni-app
mosen86817 小时前
Uniapp去除顶部导航栏-小程序、H5、APP适用
vue.js·微信小程序·小程序·uni-app·uniapp
尚梦1 天前
uni-app 封装刘海状态栏(适用小程序, h5, 头条小程序)
前端·小程序·uni-app
2401_865854881 天前
iOS应用想要下载到手机上只能苹果签名吗?
后端·ios·iphone