使用两个生产 APN 证书

Use two production APN Certificate

我正在开发一个有两个目标的应用程序,一个用于企业内部分发,另一个用于 Appstore。有两个Apple dev account,一个是enterprise(用于企业目标),另一个是Appstore的standard one。

我使用内部目标仅用于测试目的(我有很多测试设备,所以我正在使用它)。我有一个 Appstore 目标的生产推送通知证书,我也想为内部目标添加一个新证书。我很好奇我的 Appstore 目标是否会出现问题?

所以我的问题是:我可以拥有两个沙盒和生产 apn 证书,一个用于 Appstore,另一个用于内部吗?通知会混合吗?

如果每个应用程序有不同的 bundle ID,那么每个 APNS 证书 都会不同,因为它们被视为两个不同的应用程序。

因此,是的您可以拥有两个沙盒和生产 APNS 证书(每个捆绑 ID 一个); 通知不会混合。

如果你有两个目标,那么yes.Just当你使用it.When确保你的应用在正确的目标中,你把你的应用放在App Store,使用Appstore目标。

没有专门用于处理同一项目中的单独目标的官方 APNs 文档,因为 APNs 与您的项目/目标设置无关。

正如您在 Setting Up a Remote Notification Server

中看到的那样

The delivery of remote notifications involves several key components:

  • Your company's server (known as the provider server)
  • Apple Push Notification service (APNs)
  • The user's device
  • Your app (running on the user's device).

以上列表中的每一项都由

标识
  • Apple Push Notification 服务(生产,或 sandbox/development):url 您用来从您的服务器触发 APNs
  • 用户的设备:您的应用在 registers for remote notification
  • 时获得的设备令牌
  • 您的应用(运行在用户设备上运行):捆绑包 ID,以及您用于 运行 应用
  • 您公司的服务器APNs certificate you create,在开发门户中为您提供捆绑 ID(如上所述),并用于触发对特定设备的远程通知

如您所见,对于哪个服务器可以触发哪个远程通知,或者应用代码、项目或目标的设置方式没有限制。

单个服务器(甚至是开发人员机器,从命令行使用 curl),可以针对上述条件的所有正确组合触发推送通知。您需要确保为正确版本的应用程序使用正确的证书。例如如果您将 InHouse 应用程序的 APNs 证书与 AppStore 应用程序的设备令牌一起使用,它将失败,等等。

许多开发人员(包括我自己)已经从命令行触发了推送通知,推送到同一应用程序的多个版本,具有不同的目标并且它有效。