如何知道用什么configuration文件/签名证书签署.ipa?
我有一堆.ipa文件,我用脚本来辞职。
那么如何检查供应configuration文件/签名证书以符合他们使用的正确信息呢?
理想情况下,我希望能够接受任何.ipa文件,并告知使用哪个configuration文件/签名证书对其进行签名。
背景:我们的企业分销证书已过期,我想重新签署我们的东西。 对于我们在Xcode中制作和存档的所有内容,这是一个简单的考虑,但对于第三方供应商提供的可分发内容,我无法做到这一点。 我想避免要求重新签名的.ipa文件,因为新的.ipa文件可能包含未知的变化并引入问题,他们也可能会收取我们的费用……但是我更担心第一个问题。
既然我们的新旧分销证书都是有效的(重叠了6个月),我需要能够确认新的分销certificate是否被使用,否则,当旧的证书到期并且“辞职”脚本没有被使用时,实际上做这个工作。
供应configuration文件具有可以使用“terminal”命令查看的UUID:
安全cms -D -i(path_to_your_provisioning_profile)
请参阅命令输出的UUID部分,如:
<key>UUID</key> <string>A008C022-7B82-4E40-8B37-172763E1E3CC</string>
Xcode在.app包中插入用于签署应用程序的供应configuration文件。 要find它,请将.ipa重命名为.zip,使用Finder解压缩,在/ Payload中find.app文件。 在.app文件上显示“Package Package Contents”,然后find名称为embedded.mobileprovision
的供应configuration文件。
使用上述命令转储它的权利,并将其与Xcodepipe理器>设备选项卡>“资源库”下的预configurationconfiguration文件部分中的configuration文件中find的UUID进行比较。 您可以使用“在Finder中显示”来显示它们在磁盘上的位置。
晚会到…
但是这个工具节省了我一些时间: 游牧/深圳
$ ipa info /path/to/app.ipa +-----------------------------+----------------------------------------------------------+ | ApplicationIdentifierPrefix | DJ73OPSO53 | | CreationDate | 2014-03-26T02:53:00+00:00 | | Entitlements | application-identifier: DJ73OPSO53.com.nomad.shenzhen | | | aps-environment: production | | | get-task-allow: false | | | keychain-access-groups: ["DJ73OPSO53.*"] | | CreationDate | 2017-03-26T02:53:00+00:00 | | Name | Shenzhen | | TeamIdentifier | S6ZYP4L6TY | | TimeToLive | 172 | | UUID | P7602NR3-4D34-441N-B6C9-R79395PN1OO3 | | Version | 1 | +-----------------------------+----------------------------------------------------------+
根据Bobjt的回答,我使用IPCU获取configuration文件的详细信息:
- 将.ipa重命名为.zip
- 用Finder解压缩
- 在/ Payload中find.app文件。
-
在.app文件上显示“Package Package Contents”,然后find名称为embedded.mobileprovision的供应configuration文件。
-
将mobileprovisioning文件拖到iPhoneconfiguration实用程序中
IPCU显示configuration文件的名称/到期date等。
检查这个工具
点击IPA文件或configuration文件中的空间将显示详细信息
我已经能够成功地使用以下过程进行testing。
- 将原始.ipa安装到设备上。
- 进入设置 – >常规 – >configuration文件(请参阅旧的configuration文件)
- 从设备上删除应用和旧configuration文件
- 辞职
- 在设备上安装重新签名的应用程序
- 进入设置 – >常规 – >configuration文件(请参阅新的configuration文件)
这似乎是一个防弹的方式来确认configuration文件已更新,因为该configuration文件中只有1个签名证书…那么我们必须签署新的证书。
(但是我还是想找一个更好的方法)
我最终使用了Bobjt和HaemEternal解决scheme的混合scheme。
- 查找档案。
- 显示包内容。
- 复制.app文件
- 显示.app文件的包内容。
- 将embedded.mobileprovision文件复制出来。
- 运行“security cms -D -i(path_to_your_provisioning_profile)”
- 从步骤6中的呼叫结果中findUUID号码。
- 打开Iphoneconfiguration实用程序并查看configuration文件以find具有相同UUID编号的configuration文件。