AppStore .ipa重新签名到企业内部崩溃

问题描述 投票:0回答:2

在我的项目中,我们使用Apple开发人员帐户中的AppStore证书创建了.ipa。此外,我们的客户希望我们使用其Apple内部企业帐户中的企业内部证书和供应配置文件重新签署.ipa,以便他们能够在内部分发该应用程序。但是,在将.ipa安装到没有显示任何错误的设备中后,该应用程序启动但立即崩溃。我能够获得以下日志:

引导失败,并出现错误:错误域= BKSProcessErrorDomain代码= 1“无法使用bundleID com.com.xxxx.xxxx.xxxx引导进程” UserInfo = {NSLocalizedDescription =无法使用bundleID com.com.xxxx.xxxx引导进程.xxxx,BKSProcessExitReason = 0,NSLocalizedFailureReason =无法启动作业,NSUnderlyingError = 0x282068ff0 {Error Domain = NSPOSIXErrorDomain Code = 3“没有这样的过程” UserInfo = {BKLaunchdOperation = launch_get_running_pid_4SB,NSLocalizedDescription =可用于XXX。 .xxxx.xxxx [0x333f] [62],BKLaunchdJobLabel = UIKitApplication:com.com.xxxx.xxxx.xxxx [0x333f] [62],NSLocalizedFailureReason =无此类进程}},BKSProcessJobLabel = UIKitApplication:com.com.xxxx.xxxx .xxxx [0x333f] [62],BSErrorCodeDescription = bootstrap-failed}

我已经仔细检查了证书和配置文件的到期日期,并且还可以将它们设置为Use System Defaults,并且看起来彼此也匹配。另外,我正在更新Info.plist文件中的捆绑包标识符,并且也更新了Entitlements.plist。对于代码签名,我已经使用了iResignEasyResign之类的工具,并使用了描述here的手动过程。

知道什么可能是问题吗?

UPDATE:在使用客户的企业内部证书重新签名之前,我可以通过使用开发证书而不是AppStore证书(如下面的建议)构建初始的.ipa来解决此问题。问题似乎是苹果公司在某种程度上对AppStore签名的应用程序进行了二进制编码,从而使得在我们重新签名时,并非所有应用程序都被完全重新签名。因此,从我可以学到的知识来看,当需要重新签名时,并且当客户没有给我们提供Apple帐户而仅向捆绑包标识符,证书和配置文件提供服务时,我建议在我们这边对.ipa进行签名开发或即席(未经测试,但可能效果也不错)证书。

ios code-signing ipa codesign
2个回答
0
投票

如果您拥有企业证书……为什么不首先使用它来构建应用程序?

[如果您没有它:我的经验是,最好使用与所需的包标识符匹配的开发者证书来构建应用,然后重新签名。


0
投票

UPDATE:在使用客户的企业内部证书重新签名之前,我可以通过使用开发证书而不是AppStore证书(如下所示)构建初始的.ipa来解决此问题。问题似乎是苹果公司在某种程度上对AppStore签名的应用程序进行了二进制编码,从而使得在我们重新签名时,并非所有应用程序都被完全重新签名。因此,从我可以学到的知识来看,当需要重新签名并且客户没有向我们提供Apple帐户,而是仅向捆绑包标识符,证书和配置文件提供服务时,我建议在我们这边对.ipa进行签名开发证书或即席证书(未经测试,但可能效果也不错)。

© www.soinside.com 2019 - 2024. All rights reserved.