AWS SNS - 推送 GCM 显示为从 Cloudwatch 发送但未在移动设备中收到
AWS SNS - Push for GCM showing as sent from Cloudwatch but not received in Mobile Device
我正在从自定义推送通知迁移到 AWS SNS。我做了以下。
- 已配置 AWS SNS 主题
- 已创建平台应用程序
- 创建端点
- 平台应用程序的订阅端点
我正在尝试使用 'publish' API 为 Ruby 推送通知的最后一步。我收到 message_id 作为响应。它还在 CloudWatch 中记录为成功/交付。但是设备没有收到推送。
设备有效
该设备具有有效的推送令牌
设备已安装应用程序。
我试过的消息格式如下
{"GCM"=>{"data"=>"{\"message\":\"message\",\"url\":\"url\"}"}, :default=>"default"}
SNS 发布API 语法
client.publish({target_arn: endpoint_arn, message: message.to_json, subject: "SNS test", message_structure: :json})
仅供参考,在将此标记为任何其他问题的重复之前,请注意我已经参考了之前的所有答案,但没有任何帮助。因此我正在养一个新的。
我的消息格式有问题。我通过 android 调试弄明白了。推送已到达设备,但不是预期的格式。因此推送未显示在设备中。我正在发送
{"GCM"=>{"data"=>"{\"message\":\"message\",\"url\":\"url\"}"}, :default=>"default"}
但是 Android 系统需要 'badge' 和我消息中的一些其他键。我试过
{:default=>"default", :GCM=>"{\"data\":{\"message\":\"test\",\"url\":\"https://s3.amazonaws.com/mcds_fulltext/aapg/gsaapgbull/issues/74/android_hdpi/cover_74.gif\",\"registration_ids\":\"arn:aws:sns:us-****-1:*********7:endpoint/GCM/gs*****_gcm/*********************\",\"badge\":\"10\",\"vol\":\"128\",\"issue\":\"10\",\"journal_name\":\"gsaapg\",\"abbr\":\"aapg\"},\"collapse_key\":\"New Article badge\"}"}
现在它按预期工作了。
这个 JSON 可能并不适合所有人。但此问题的原因是消息 JSON 不是移动应用程序的预期格式。这可能对面临类似问题的人有所帮助。
GCM 负载格式已更新。
这对我有用。
{
"GCM": "{ \"notification\": { \"body\": \"hello....\", \"title\": \"title123\" } }"
}
我正在从自定义推送通知迁移到 AWS SNS。我做了以下。
- 已配置 AWS SNS 主题
- 已创建平台应用程序
- 创建端点
- 平台应用程序的订阅端点
我正在尝试使用 'publish' API 为 Ruby 推送通知的最后一步。我收到 message_id 作为响应。它还在 CloudWatch 中记录为成功/交付。但是设备没有收到推送。
设备有效 该设备具有有效的推送令牌 设备已安装应用程序。
我试过的消息格式如下
{"GCM"=>{"data"=>"{\"message\":\"message\",\"url\":\"url\"}"}, :default=>"default"}
SNS 发布API 语法
client.publish({target_arn: endpoint_arn, message: message.to_json, subject: "SNS test", message_structure: :json})
仅供参考,在将此标记为任何其他问题的重复之前,请注意我已经参考了之前的所有答案,但没有任何帮助。因此我正在养一个新的。
我的消息格式有问题。我通过 android 调试弄明白了。推送已到达设备,但不是预期的格式。因此推送未显示在设备中。我正在发送
{"GCM"=>{"data"=>"{\"message\":\"message\",\"url\":\"url\"}"}, :default=>"default"}
但是 Android 系统需要 'badge' 和我消息中的一些其他键。我试过
{:default=>"default", :GCM=>"{\"data\":{\"message\":\"test\",\"url\":\"https://s3.amazonaws.com/mcds_fulltext/aapg/gsaapgbull/issues/74/android_hdpi/cover_74.gif\",\"registration_ids\":\"arn:aws:sns:us-****-1:*********7:endpoint/GCM/gs*****_gcm/*********************\",\"badge\":\"10\",\"vol\":\"128\",\"issue\":\"10\",\"journal_name\":\"gsaapg\",\"abbr\":\"aapg\"},\"collapse_key\":\"New Article badge\"}"}
现在它按预期工作了。
这个 JSON 可能并不适合所有人。但此问题的原因是消息 JSON 不是移动应用程序的预期格式。这可能对面临类似问题的人有所帮助。
GCM 负载格式已更新。 这对我有用。
{
"GCM": "{ \"notification\": { \"body\": \"hello....\", \"title\": \"title123\" } }"
}