【问题标题】:Apple push notification for production in iOS not workingApple 在 iOS 中的生产推送通知不起作用
【发布时间】:2017-10-25 19:33:11
【问题描述】:

从问题开始,后端的推送通知证书是由另一个开发人员设置的,并且运行良好。但是,开发人员已经离开,由于我无法访问他的机器,因此我创建了新的分发证书来上传新版本的应用程序,然后停止推送通知以进行传递。我第一次使用推送通知,很困惑问题出在哪里。谁能给我一个清晰的画面以及正在发生的事情以及如何去做?

这是我在它停止工作后所做的。我去了开发者门户,因为它显示推送通知已启用,

  1. 在我的 mac 中生成了代码签名请求或 CSR 文件
  2. 下载了 aps.cer 文件
  3. 已创建 .p12 和 .pem 文件

在此之后,我将 .p12 和 .pem 文件都提供给了我们的后端人员,但仍然无法在我们的试飞版本中运行。

然后我使用 GitHub 上提供的 Pusher 应用程序进行了测试,它使用生产证书成功地将推送通知传递到了测试飞行版本。

因此,谁能给我一个明确的想法,我可能哪里出错了? 我是否需要撤销我的推送通知 SSL 证书并重新生成?或者可能是什么错误?

【问题讨论】:

  • 对于试飞,您需要提供生产 p12,很可能您的后端人员做错了什么:D。
  • @mustafa96m 用于后端发布或一般生产需要哪一个?是 .pem 文件还是 .p12 文件或两者兼而有之?
  • 查看这个:link

标签: ios push-notification apple-push-notifications push


【解决方案1】:

如果它使用任何在线工具(例如 pusher)工作,那么它也应该可以从代码中正常工作。您的开发人员缺少一些东西,请他正确检查配置。如果是生产证书和生产应用程序,他必须调用生产 APNS url/port。如果是沙盒证书和沙盒应用程序,他必须调用沙盒 APNS url/port。下面的 url/ports 用于 APNS(假设您直接使用 APNS 而不是 firebase)

SANDBOX_GATEWAY_HOST = "gateway.sandbox.push.apple.com"
SANDBOX_GATEWAY_PORT = 2195
SANDBOX_FEEDBACK_HOST = "feedback.sandbox.push.apple.com"
SANDBOX_FEEDBACK_PORT = 2196
PRODUCTION_GATEWAY_HOST = "gateway.push.apple.com"
PRODUCTION_GATEWAY_PORT = 2195
PRODUCTION_FEEDBACK_HOST = "feedback.push.apple.com"
PRODUCTION_FEEDBACK_PORT = 2196

还要确保这些 url 可以从您的服务器访问,尝试使用 curl 命令从服务器发送推送通知,如果问题仍然存在,请调试。如果您使用代理,请记住代理。

【讨论】:

    【解决方案2】:

    只是在这里回答,以便对其他人有所帮助。一切都相应地设置,但是,问题是服务器中的“沙盒”键设置为“真”以进行生产。一旦我们将其设置为 false,一切都会完美运行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-23
      • 2012-03-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多