0

我一直在尝试使用 Amazon Pinpoint 使用示例应用程序为 iOS 运行推送通知活动,但无济于事。对于Android,它是成功的。我尝试直接使用 APNS 和 Amazon SNS 进行推送,都成功了。

我怀疑存在一些与 iOS 相关的认证问题。我使用本文档指南获取 .p12 证书以上传到 Pinpoint 界面的“管理 - 频道”部分以及 Amazon SNS。

http://docs.aws.amazon.com/mobile-hub/latest/developerguide/ios-appid-setup.html

检测到设备,但消息未传递到 iOS。在下面的屏幕截图中,交付的数量适用于 Android 设备(2 个 iOS 设备,1 个 Android)。 在此处输入图像描述

任何帮助将不胜感激。谢谢!!

4

1 回答 1

2

这可能是因为您的证书是“开发”或“APNS 沙盒”证书吗?

如果是这样,则当前不支持通过 Amazon Pinpoint 控制台发送到 APNS 沙盒。

使用 CLI(或任何 SDK)执行此操作相对简单,但需要一些 shell 知识。

您首先要注册您的 APNS_SANDBOX 频道

## Assuming you have your cert and key in the following files
MY_CERT=$(cat my-cert.ct)
MY_KEY=$(cat my-key.pk)
aws pinpoint update-apns-sandbox-channel --apns-sandbox-channel-request  Certificate=$MY_CERT,Enabled=true,PrivateKey=$MY_KEY

然后您可以使用直接发送 API 直接发送到任何地址

aws pinpoint send-messages --message-request "{
    \"Addresses\": {
        \"YOUR_SANDBOX_TOKEN_HERE\": {
            \"ChannelType\": \"APNS_SANDBOX\"
        }
    },
    \"MessageConfiguration\": {
        \"APNSMessage\": {
            \"Action\": \"OPEN_APP\",
            \"Body\": \"Body of message\",
            \"Title\": \"Subject\"
        }
    }
}"
于 2017-08-03T01:51:10.430 回答