3

根据标题,我正在尝试让 AWS SNS 推送通知在 iOS 设备上工作。出于测试目的,我想尝试使用 Mobile Hub ( https://console.aws.amazon.com/mobilehub ) 并在给出的示例应用程序之上进行工作。

我似乎无法让它工作。我知道当涉及到多层指令时很难寻求帮助,但是我整个周末都在努力解决这个问题,但似乎无法弄清楚。在 AppDelegate 中,当我在选择主题后触发 Amazon SNS 移动控制台中的 SNS 时,didReceiveRemoteNotification 调用应该会收到一些东西。但是这个协议没有被调用。

  1. 在供应配置文件方面,我创建了开发和分发。两者都测试过。
  2. 在证书方面,我尝试过 Apple Push Notification service SSL (Sandbox) 和 Apple Push Notification service SSL (Sandbox & Production)。很明显,您必须选择后者,因为对于前者,安装应用程序时甚至不会显示通知权限警报。只有当您使用后者安装它时才会显示。

  3. 我确保捆绑包 ID 匹配。

  4. 我已经在我的 iphone 6s 上打开了所有通知。

  5. 在控制台上,我看到这条成功消息:

2016-03-30 20:57:57.103 MySampleApp [284:47861] AWSiOSSDKv2 [信息] AWSPushManager.m 行:186 | -[AWSPushManager 拦截应用程序:didRegisterForRemoteNotificationsWithDeviceToken:] | 设备令牌:435d5se354s38s9ddge2edcs2a3601e18ss9c83e47s629164ebced21s16abb39974sg3

  1. “didFailToRegisterForRemoteNotificationsWithError”永远不会被调用。

  2. “didRegisterForRemoteNotificationsWithDeviceToken”成功被调用。

  3. 我的控制台上也收到了这条成功消息:

2016-03-30 21:34:16.635 MySampleApp [321:57551] AWSiOSSDKv2 [信息] PushNotificationViewController.m 行:112 | -[PushNotificationViewController topicDidSubscribe:] | 订阅主题成功:AWSPushTopic: 0x14c6da770

我完全迷路了。如果有更多信息可供我发布以解决此问题,请告诉我。

更新:Rohan Dubal,感谢您的评论。以下是您向我提出的以下要求。

  1. 是的,我总是从“我的示例应用程序”导航栏视图->“推送通知”行->“推送通知”导航栏视图->单击底部的演示推送通知->切换打开(绿色)并且“主题”行已选中,我已将 APNS 发送到该引用主题。

  2. 是的,我尝试过最小化并关闭应用程序。顶部栏通知或任何通知根本不显示。

感谢您的反馈意见。请建议我可以运行的任何其他测试。

另外,我想也许它必须用我的 iphone 6s 来做,所以我用 iphone 5s 尝试了它,但它仍然无法正常工作。iphone 6s 是 ios9.2,iphone 5s 是 ios 8.3。

4

1 回答 1

3

好吧,这听起来与我刚刚遇到的问题相似。Mobile Hub 似乎只允许您设置生产 APNS 而不是开发 APNS。当我使用 XCODE 调试应用程序时,我需要使用沙盒 APNS,所以我执行了以下操作:

  1. 创建 Apple Development (APNS_SANDBOX) 类型的 SNS 应用程序
  2. 在 App ID 中使用我的开发证书中的 .p12
  3. 启动我的应用程序并记录 didRegisterForRemoteNotificationsWithDeviceToken 给我的设备令牌
  4. 最小化我的应用程序(否则不会出现通知)
  5. 在 SNS 控制台中,我使用设备令牌注册了一个端点
  6. 使用 SNS 控制台中的 Publish to this Endpoint 按钮发送消息(显然是“Hello World”)
  7. 看到通知
  8. 工程师们的胜利跳舞了吗

希望对您有所帮助。对我来说,关键是意识到我需要创建另一个 SNS 队列。TBH 我没有看到 Mobile Hub 的好处。

于 2016-09-12T21:01:50.927 回答