ios - 辞职的ipa不要安装在ios设备上
问题描述
我的组织有开发人员帐户(不是企业),并将我作为“团队成员”添加到组织的团队帐户中,并共享了开发人员证书和开发配置文件(包括 1 个设备)。使用这些,我可以开发一个应用程序、存档并从 XCode 创建一个 IPA(选择的分发方法为“开发”)并导出到磁盘上的一个文件夹。导出时,我在磁盘上创建了以下文件
- DistributionSummary.plist
- 导出选项a.plist
- 清单.pList
- 包装日志
- 应用程序.ipa
我组织的管理员想要退出这个 ipa 以分发到应用商店,并按照下面提到的所有步骤,使用分发证书和 dist。配置文件(应用商店)。然后将辞职的 ipa 分发(OTA)给用户,并且不会安装在他们的手机上。
我按照以下步骤重新签署了我们的 ipa
解压应用
解压 -q *.ipa
删除旧签名
rm -rf Payload/*.app/_CodeSignature/
替换嵌入式配置文件
cp "XXXXXXXXXX_distribution.mobileprovision" Payload/*.app/embedded.mobileprovision
从应用程序中提取权利
codesign -d --entitlements :entitlements.plist Payload/*.app/
重新签署嵌入式框架
codesign -f -s "iPhone Distribution: Certificate Name. (ABC44343XZ)" --entitlements entitlements.plist Payload/ .app/Frameworks/
重新签署应用程序(带有权利)
codesign -f -s "iPhone Distribution: Certificate Name. (ABC44343XZ)" --entitlements entitlements.plist Payload/*.app/
Zip 重新签名的应用程序
zip -qr resigned.ipa 有效负载
清理
rm 权利.plist
rm -r 有效载荷/
我可以重新签署开发人员的应用程序以分发到应用程序商店吗?有人可以告诉我哪里出错了吗?任何帮助是极大的赞赏。
解决方案
注意:我正在回答您在评论中所说的内容
[更新] 我收到一封来自 Apple 的电子邮件,其中包含以下要修复的问题“无效的 Swift 支持 - 缺少 SwiftSupport 文件夹。使用当前公共 (GM) 版本的 Xcode 重新构建您的应用程序并重新提交。” 有人能帮我一下吗?
我不能直接在评论上这样做,因为我没有足够的声誉。
第一次解压缩 .ipa 时,您应该看到至少四个文件夹:一个是Payload(您在其中执行所有签名操作以及有关配置的更改)、Symbols、BCSymbolMaps和一个SwiftSupport文件夹。当您执行 zip 时,您还必须将SwiftSupport文件夹添加到 .ipa:
zip -qr yourNewApp.ipa Payload/ SwiftSupport/
完成此操作后,您可以通过 Application Loader 上传,或者您可以验证您的 .ipa 运行此:
/Applications/Xcode.app/Contents/Applications/Application\ Loader.app/Contents/Frameworks/ITunesSoftwareService.framework/Support/altool -v -f yourNewApp.ipa -u yourItunesConnectUser@mail.com
推荐阅读
- elasticsearch - 无论父母不同,如何对嵌套文档进行排序
- angular - 无法在 VS Code 中调试 dockerize Angular 应用程序 - 无法连接到目标:套接字挂断
- google-chrome - Chromium 本机内存增长(通过图像缓存?)
- exist-db - eXist persistentlogin 不持久
- javascript - Slim cropper 在我的本地主机上运行良好,但在服务器上出现 403 禁止错误
- python - 从未分配给变量的 pandas DataFrame 中选择行
- html - 两行或多行 display flex
- python - 为什么在比较python中的字符串时我的代码中出现“!=”不相等的错误?
- python - 在 PeePDF 中 rawobject "object no" 命令是什么意思?
- c# - 使用 TargetFramework 创建 Razor 类库到 .net core 3 会引发错误