更新推送证书并保持当前的App Store应用程序正常工作。

150

我有一个在应用商店上的应用程序,使用了一个已过期的iOS签名证书(分发版本)。该证书包含的推送证书也已过期(并且不再出现在门户网站中)。

问题1: 是否有方法重新创建推送证书并更新证书?(我仍然在我的密钥链中拥有过期的推送证书)?

问题2: 我需要使用包含新推送证书的新配置文件重新提交应用程序到应用商店吗?

由于推送证书已经过期,我可能无法向应用的现有用户发送通知。

6个回答

252

推送证书无法更新,您需要创建一个新的。

推送通知证书不是应用程序构建的一部分。因此,为了使推送继续工作,您只需创建一个新证书并在服务器上部署p12文件(或任何其他格式)。您不必提交应用程序的新版本。


1
是的,新的推送证书必须为相同的AppID创建(其中包含现有应用程序的捆绑标识符)。 - Eran
1
@hemant 不,推送证书仅在您的服务器中使用,因此无论您在服务器端使用哪种证书,旧版本的应用都应该可以继续接收推送通知(假设服务器使用生产推送证书并推送到生产推送环境,并且该应用已签名使用生产配置文件,如果您是在谈论已经在应用商店中的应用程序,则应该是这种情况)。 - Eran
11
为什么人们不提供链接?这是生成证书的相关指南:https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/AddingCapabilities/AddingCapabilities.html#//apple_ref/doc/uid/TP40012582-CH26-SW11 - skensell
4
我的应用程序用户因为推送证书过期而停止接收推送通知。这个答案帮助了我,我在短短的5分钟内解决了问题,一切都很顺利。点赞!!! - NSPratik
2
@Vasanth,你现在可以生成一个新的并更新。没关系,不需要等待。 - Maulik
显示剩余9条评论

18

您无法更新现有的推送证书,只能创建一个新的。但您也可以选择不创建新的证书,而是更好地创建推送通知授权键。您可以与证书使用相同的方式使用它,但它不会过期,也没有每年续订的需要。

您可以从成员中心的“密钥”选项卡中创建推送通知密钥:

创建新的推送通知密钥


这真的很有趣...我能用它来进行VoIP推送吗?到目前为止,使用密钥似乎仅限于常规通知? - MegaManX
1
@MegaManX:是的,只有常规推送通知。你最好在SO上发布一个相关问题。 - Vladimir Grigorov
可以在多个应用程序中使用相同的推送通知密钥吗? - Yalamandarao
@新加坡:是的,一个密钥可用于您所有的应用程序。 - Vladimir Grigorov
1
@tyler.frankenstein:也许你的APNs证书仍然有效?我正在使用一个密钥,我的应用程序ID已启用推送通知,但没有证书。 - Vladimir Grigorov
显示剩余4条评论

11

关于VoIP推送证书的补充说明。

与推送证书类似,VoIP证书无法更新,您需要创建一个新的证书。

如果您的VoIP证书已过期或被吊销,VoIP通知将无法工作。

如果您创建了一个新证书,您需要在服务器端部署新的p12文件。VoIP证书也不是应用程序构建的一部分,因此您无需重新提交应用程序。


7
无需撤销。 您可以为每个应用程序ID创建一个额外的APNS证书。
登录开发者帐户->标识符->选择应用程序ID->编辑推送通知->创建一个附加证书->下载并安装到钥匙串访问中->以.p12格式导出。 第1步 第2步

4

对于苹果方面:

您的服务:

  • 登录并找到“推送证书设置”区域(对于谷歌,这是移动Apple Push Cert
  • 下载您的服务签名请求

苹果:

  • 上传您的签名请求
  • 下载他们的响应

您的服务:

  • 上传已签名的响应

此时,一切都应该设置好了。


2

答案1:这需要从配置门户创建新的证书。在一个捆绑标识符上可以在配置门户上拥有多个证书。

答案2:不需要重新提交应用到AppStore。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接