iOS xCode6(应用程序签名无效)
iOS xCode6 (Application signature not valid)
这不是我第一次遇到这种情况。上次我纯粹是偶然解决了它,但这没有办法继续前进。我现在已经为此浪费了整整 2 天时间,头发都没有了。
所以这就是问题所在。我必须重新签署企业分布式应用程序才能发布最新更新。
我在终端中使用 codesign
函数执行此操作。一切似乎都在正确构建。途中没有看到任何问题。将新应用程序下载到我的设备时失败了,在 xCode 设备日志中它告诉我 (Application signature not valid)
.
所以我现在心情很好,因为我意识到我回到了那个地方,我也可以取消本周剩下的时间。
这就是我到目前为止所做的补救措施。
- 删除了我在钥匙串访问中的所有相关密钥和证书
- 已从我的设备中删除已保存的配置文件
- 撤销并销毁了 xCode 和 Apple 开发门户中的所有证书。
- 从 xcode 刷新以接收新的开发者和发行版
证书。
- 创建了新的证书申请文件
- 以新名称创建了新的应用程序 ID
- 添加了使用新签名请求的推送服务
- 使用新名称创建了一个新的配置文件,并且
使用之前创建的所有新的有效证书。
- 使用终端中签名的新信息和代码重新创建了所有 .plist 文件。
没有变化。
私钥和public密钥都在那里。我已经完成了每个演练中提到的所有内容,并找到了我能找到的答案。我已经完成这个过程很多次了,我已经非常擅长了。但是它对我来说根本不起作用。
我唯一能猜到的问题是我在钥匙串中的证书在描述旁边没有代码。这可能没什么,但这是我此刻能想到的。它说 iPhone Distribution: <name>
而不是 iPhone Distribution: <name> (<teamcode>)
。我如何创建密钥似乎并不重要这似乎无法解决这个问题。
如果是这种情况,如果有人可以向我指出有关如何实现这一目标的详细且最新的演练,那将是一个开始。
如果有人拥有或知道关于如何成功创建有效且有效的企业分发证书的权威和最新演练,那将是实实在在的黄金。
这是我的错误日志代码,仅供娱乐
[MICodeSigningVerifier performValidationWithError:]: 186: Failed to verify code signature of <MIExecutableBundle : path = /private/var/mobile/Library/Caches/com.apple.mobile.installd.staging/temp.F1KrWm/extracted/Payload/<myRebuiltApp>.app identifier = com.<company>.<app> type = 4> : 0xe8008019 (Application signature not valid)
Mar 17 14:40:54 My-iPad installd[36] <Error>: 0x1d44000 -[MIInstaller performInstallationWithError:]: Verification stage failed
Mar 17 14:40:55 My-iPad itunesstored[83] <Error>: 0x681000 __MobileInstallationInstallForLaunchServices_block_invoke240: Returned error Error Domain=MIInstallerErrorDomain Code=13 "Failed to verify code signature of <MIExecutableBundle : path = /private/var/mobile/Library/Caches/com.apple.mobile.installd.staging/temp.F1KrWm/extracted/Payload/<myRebuiltApp>.app identifier = com.<company>.<app> type = 4> : 0xe8008019 (Application signature not valid)" UserInfo=0x16edcd10 {LibMISErrorNumber=-402620391, LegacyErrorString=ApplicationVerificationFailed, FunctionName=-[MICodeSigningVerifier performValidationWithError:], NSLocalizedDescription=Failed to verify code signature of <MIExecutableBundle : path = /private/var/mobile/Library/Caches/com.apple.mobile.installd.staging/temp.F1KrWm/extracted/Payload/<myRebuiltApp>.app identifier = com.<company>.<app> type = 4> : 0xe8008019 (Application signature not valid), SourceFileLine=186}
如有任何帮助,我们将不胜感激。
所以我让它工作了..不确定这与其他任何时间有何不同,但就是这样。
- 连接了我的 iPad 和 iPhone 并删除了所有配置
个人资料
- 从中删除了所有 (developer/distribution) 个证书
钥匙串访问
- 已验证 Logins 是默认文件夹
- 在 Apple Dev Center 中吊销了我的证书
- 创建了一个新的分发证书(但之后没有下载)
- 前往 xcode 并刷新签名身份(由于在 keychainaccess 中删除,现在为空)
- 向 xcode 申请了一份新的开发者资料(它为我建立了一个)
- 请求了一个新的分发配置文件(有一个所以它是从我几秒钟前制作的那个刷新的)
- 这些现在显示在钥匙链访问中
- 返回开发中心制作了一个全新的app id(与之前版本的名称不同)
- 创建了一个新的配置文件并下载了它。
- 返回到应用程序以使用新的配置文件解压缩+修改+重新注册
- 创建了新的 plist 文件并将所有文件上传到 SSL 站点
- 去喝咖啡
- 已将应用下载到我的设备
- 有效。
- 也在我女朋友的设备上测试过。
- 任务成功。
经历了这么多次,我不知道哪一部分是获胜的部分,所以我只是把它们都列出来,希望它能帮助别人。
如果有人知道哪一部分是获胜的部分。让我知道。我不知道我将如何应对再次经历那件事。
这不是我第一次遇到这种情况。上次我纯粹是偶然解决了它,但这没有办法继续前进。我现在已经为此浪费了整整 2 天时间,头发都没有了。
所以这就是问题所在。我必须重新签署企业分布式应用程序才能发布最新更新。
我在终端中使用 codesign
函数执行此操作。一切似乎都在正确构建。途中没有看到任何问题。将新应用程序下载到我的设备时失败了,在 xCode 设备日志中它告诉我 (Application signature not valid)
.
所以我现在心情很好,因为我意识到我回到了那个地方,我也可以取消本周剩下的时间。
这就是我到目前为止所做的补救措施。
- 删除了我在钥匙串访问中的所有相关密钥和证书
- 已从我的设备中删除已保存的配置文件
- 撤销并销毁了 xCode 和 Apple 开发门户中的所有证书。
- 从 xcode 刷新以接收新的开发者和发行版
证书。 - 创建了新的证书申请文件
- 以新名称创建了新的应用程序 ID
- 添加了使用新签名请求的推送服务
- 使用新名称创建了一个新的配置文件,并且 使用之前创建的所有新的有效证书。
- 使用终端中签名的新信息和代码重新创建了所有 .plist 文件。
没有变化。
私钥和public密钥都在那里。我已经完成了每个演练中提到的所有内容,并找到了我能找到的答案。我已经完成这个过程很多次了,我已经非常擅长了。但是它对我来说根本不起作用。
我唯一能猜到的问题是我在钥匙串中的证书在描述旁边没有代码。这可能没什么,但这是我此刻能想到的。它说 iPhone Distribution: <name>
而不是 iPhone Distribution: <name> (<teamcode>)
。我如何创建密钥似乎并不重要这似乎无法解决这个问题。
如果是这种情况,如果有人可以向我指出有关如何实现这一目标的详细且最新的演练,那将是一个开始。
如果有人拥有或知道关于如何成功创建有效且有效的企业分发证书的权威和最新演练,那将是实实在在的黄金。
这是我的错误日志代码,仅供娱乐
[MICodeSigningVerifier performValidationWithError:]: 186: Failed to verify code signature of <MIExecutableBundle : path = /private/var/mobile/Library/Caches/com.apple.mobile.installd.staging/temp.F1KrWm/extracted/Payload/<myRebuiltApp>.app identifier = com.<company>.<app> type = 4> : 0xe8008019 (Application signature not valid)
Mar 17 14:40:54 My-iPad installd[36] <Error>: 0x1d44000 -[MIInstaller performInstallationWithError:]: Verification stage failed
Mar 17 14:40:55 My-iPad itunesstored[83] <Error>: 0x681000 __MobileInstallationInstallForLaunchServices_block_invoke240: Returned error Error Domain=MIInstallerErrorDomain Code=13 "Failed to verify code signature of <MIExecutableBundle : path = /private/var/mobile/Library/Caches/com.apple.mobile.installd.staging/temp.F1KrWm/extracted/Payload/<myRebuiltApp>.app identifier = com.<company>.<app> type = 4> : 0xe8008019 (Application signature not valid)" UserInfo=0x16edcd10 {LibMISErrorNumber=-402620391, LegacyErrorString=ApplicationVerificationFailed, FunctionName=-[MICodeSigningVerifier performValidationWithError:], NSLocalizedDescription=Failed to verify code signature of <MIExecutableBundle : path = /private/var/mobile/Library/Caches/com.apple.mobile.installd.staging/temp.F1KrWm/extracted/Payload/<myRebuiltApp>.app identifier = com.<company>.<app> type = 4> : 0xe8008019 (Application signature not valid), SourceFileLine=186}
如有任何帮助,我们将不胜感激。
所以我让它工作了..不确定这与其他任何时间有何不同,但就是这样。
- 连接了我的 iPad 和 iPhone 并删除了所有配置 个人资料
- 从中删除了所有 (developer/distribution) 个证书 钥匙串访问
- 已验证 Logins 是默认文件夹
- 在 Apple Dev Center 中吊销了我的证书
- 创建了一个新的分发证书(但之后没有下载)
- 前往 xcode 并刷新签名身份(由于在 keychainaccess 中删除,现在为空)
- 向 xcode 申请了一份新的开发者资料(它为我建立了一个)
- 请求了一个新的分发配置文件(有一个所以它是从我几秒钟前制作的那个刷新的)
- 这些现在显示在钥匙链访问中
- 返回开发中心制作了一个全新的app id(与之前版本的名称不同)
- 创建了一个新的配置文件并下载了它。
- 返回到应用程序以使用新的配置文件解压缩+修改+重新注册
- 创建了新的 plist 文件并将所有文件上传到 SSL 站点
- 去喝咖啡
- 已将应用下载到我的设备
- 有效。
- 也在我女朋友的设备上测试过。
- 任务成功。
经历了这么多次,我不知道哪一部分是获胜的部分,所以我只是把它们都列出来,希望它能帮助别人。 如果有人知道哪一部分是获胜的部分。让我知道。我不知道我将如何应对再次经历那件事。