ios - 从 Xcode 导出 IPA 以使用另一个分发证书重新签名
问题描述
我正在使用我自己的开发人员帐户创建的应用程序 ID(比如说 com.developer.myapp),并启用了应用程序组和钥匙串共享以进行开发。我的组织使用自己的帐户在 AppStore 上上传应用程序。问题是,他们没有与我共享分发证书和配置文件。我已要求团队为公司的应用程序 ID (com.mycompany.finalproduct) 启用应用程序组和钥匙串共享。现在,我需要通过“iOS AppStore”分发方法从 Xcode 导出 IPA,但这样做时我遇到了错误。
- 由于应用程序组不同,保留 2 项开发和分发权利
- 由于分发证书不在我身边,因此在尝试以发布模式存档时,我收到一条错误消息,提示应用程序组不匹配
- 在“构建设置”中删除了发布模式的“代码签名身份”
- 以调试模式存档,通过验证并发送 IPA 以进行重新签名
- 应用程序使用分发证书重新签名,但在上传到 AppStore Connect 时出现错误“缺少 SwiftSupport 文件夹。使用 Xcode 的当前公共 (GM) 版本重新构建您的应用程序并重新提交。”
解决方案
SwiftSupport 文件夹只会在使用 xCode 导出时添加到“Store Export”中。如果您没有商店的分发证书,则不能以这种方式导出它。
如果您只是在开发人员 IPA 上切换签名,则该文件夹仍然丢失。这里有几个关于这个主题的主题。手动将文件夹添加到 IPA 也不会很好地工作。也许存在一些解决方法,但在我看来这不是正确的方法。
我们也有客户,他们只给我们一个开发人员证书和专门用于此的配置文件,但最终的应用程序 id。过去我们总是给他们.xcarchive,所以他们可以自己导出/上传IPA。也就是说,在我看来,它应该是这样的。现在他们希望我们将 IPA 上传到第三方工具,但该工具还会检查 IPA 以查找商店应用程序的 SwiftSupport 文件夹,因此我们无法上传 IPA。
在我看来,如果他只是获得了开发人员证书,那么关注这个并不是外部开发人员的任务。和简介。我完全可以理解客户不想将分发证书分发给外部来源,但他必须接受,他需要自己完成最后一步。
推荐阅读
- zend-framework - Zend3 InputFilter 不验证表单
- amazon-web-services - Hadoop distcp 到 AWS s3 存储桶
- cordova - Corodva 更新后,Android App 中的某些功能在运行时失败
- python - Django 1.11 新的中间件和 decorator_from_middleware_with_args
- php - php数组到mysql表中的列行
- android - 如何使用谷歌的camera2在没有任何用户界面(“按钮”)的情况下自动捕获?
- android - 用动态键改造 gson
- r - 将具有相交基因和冗余列的 data.frames 列表连接到一个唯一的 data.frame 中
- ionic3 - 带有 api 的 Ionic 应用程序未在真实设备上运行
- amazon-web-services - 如何为 AWS 创建 Kubernetes Ingress