【问题标题】:Stuck at IOS Push Notification (Testflight)卡在 IOS 推送通知 (Testflight)
【发布时间】:2019-03-13 10:26:40
【问题描述】:

这几天我卡在 IOS 推送通知上。这是我的场景:-

  1. 使用Easy APNS Provider并使用aps.cer推送通知(从App ID > Production SSL Certificate下载),可以成功接收。

  2. 使用APNS & GCM Online Tester并使用.pem文件推送通知(在keychain中生成>导出为.p12>转换为.pem文件),可以成功接收。

  3. 使用Push Tester 并使用.pem 文件推送通知(同上),错误消息将显示如下。

  4. 将 .pem 文件放入我的服务器端 (PHP) 时,它无法正常工作。但是沙盒测试的时候就好了(developmentPush.pem)。

任何想法,请帮助并提醒我我错过了什么。赞赏!

【问题讨论】:

  • 尝试从这里发送推送并检查pushtry.com
  • @NikunjKumbhani 我收到此错误“无法识别提供给包的凭据”
  • 请查看我的回答
  • 如何获取设备令牌?你用什么功能?
  • @MohamedJaafar 我在此函数中获取设备令牌:-didRegisterForRemoteNotificationsWithDeviceToken --> iOSDeviceToken = [[[[deviceToken description] stringByReplacingOccurrencesOfString: @"" withString:@""] stringByReplacingOccurrencesOfString:@"" withString:@""];

标签: ios objective-c push-notification


【解决方案1】:

我认为您在此处导出 .p12 证书有问题我可以在导出屏幕截图显示中看到 Export 2 items。

不要选择导出 .p12 证书的私钥。

检查 .p12

无法更新证书的名称

【讨论】:

  • 嗨 Nikunj,我可以知道你的意思是不能更新证书的名称吗?
  • @henry 我说尝试使用名称 Certificates.p12 以及在此之前的另一件事,删除以前的证书并从密钥链中删除并使用检查 bundleid 下载新证书 与应用程序包 ID 相同。
  • 现在我可以使用带有 .P12 文件的 Pushtry.com 并且它会成功发送出去。但是当我尝试使用 .pem 文件时,我会收到这个错误:- pushcert.pem | 4460 | application/x-x509-ca-cert 我用它在终端openssl pkcs12 -in cert.p12 -out pushcert.pem -nodes -clcerts 进行转换@
  • 我尝试了您发布的解决方案,并且能够生成 2 个单独的文件。但是升技迷惑了如何组合成最终的.pem文件
【解决方案2】:

总之,以下是执行 IOS 推送通知时要注意的一些步骤:-

  1. 启用服务器端口/请求您的服务器提供商启用 APS 端口(例如端口 2195)
  2. 确保在 Apple Connect 中启用推送通知功能
  3. 在后端服务器中将 URL 从 gateway.sandbox.push.apple.com:2195 更改为 gateway.push.apple.com,端口 2195。
  4. 确保您的 APS 密钥下载并正确转换为 .PEM 文件。
  5. 不要将 PRODUCTION 和 DEVELOPMENT 设备令牌混在一起发送到 APNS。它也会导致失败。

【讨论】:

    猜你喜欢
    • 2017-03-27
    • 1970-01-01
    • 2021-02-11
    • 2015-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-01
    • 2015-07-09
    相关资源
    最近更新 更多