手动重新签名的IPA未能向APNS注册

时间:2014-04-22 22:54:42

标签: ios xcode

我们已经从我们的供应商那里收到了使用开发配置文件签署的IPA,以测试Prod Push消息,我们使用AdHoc配置文件手动重新签署了IPA。

该应用程序在设备上安装并运行正常,但无法注册Push Messaging。

这是我们所做的(遵循此https://coderwall.com/p/cea3fw):

解压缩app.ipa

rm -rf Payload / MyApp.app / _CodeSignature /

cp~ / Downloads / AdHoc.mobileprovision Payload / MyApp.app / embedded.mobileprovision

codesign -f -s" iPhone发行版:公司证书" --resource-rules Payload / MyApp.app / ResourceRules.plist Payload / MyApp.app

zip -qr app-resigned.ipa Payload /

Sideload to device,app启动,但无法注册推送。

从那时起,供应商向我们发送了一个xacrchive文件,我们可以通过xcode成功导出签名,但我们仍然很好奇为什么代码签名没有在IPA上工作。

2 个答案:

答案 0 :(得分:1)

这是为了将我的评论封装为答案 - 解决方案是使用Entitlements.plist文件将aps-environment权利强制转换为.app构建的文件。

这在某些情况下可能是必要的,这里有一个例子,当使用Xcode机器人构建系统失败进行涉及推送的构建时:

IPA created via Xcode bot fails to run for APNS but runs if built manually via Xcode itself or built as an archive by Xcode

答案 1 :(得分:0)

在Martin H的帮助下,在原始答案的评论中回答。

回顾一下: 当应用程序使用开发人员配置文件签名时,您需要在使用分发配置文件进行重新签名时添加权利。