android - 使用 AWS SNS 的 Firebase 云消息传递

标签 android amazon-web-services firebase firebase-cloud-messaging amazon-sns

我正在尝试将 FCM 与 SNS 集成。我读到这个answer该设置应与 GCM 相同。我设法创建了一个 FCM 应用程序,可以将消息发送到 Android 设备。当应用程序处于后台时,设备会在托盘中接收通知,或者当应用程序处于前台时,设备会打印收到的消息。我现在正在尝试将它集成到 SNS,但我似乎无法让它工作,没有任何错误消息。

在创建平台时,我应该使用哪个键?我使用了一种形式的 firebase 控制台-> 项目设置-> 云消息传递-> 服务器 key 这是错误的吗?

对于平台端点,我使用 FCM token 作为设备 token ,在 firebase 控制台中发送通知时也会使用它。 另外,我应该在用户数据中放入什么,任意字符串都可以吗?

对于消息,我使用了在 SNS 控制台中生成的 Json。 FCM 是否接受与 GCM 不同的格式?

我错过了什么吗?

最佳答案

如果您使用的是 Firebase,请确保将 AWS SNS 发布到端点消息修改为如下所示:

{
"GCM": "{ \"notification\": { \"body\": \"test aws\", \"title\": \"test aws\" } }"
}

它必须有正文和标题,并将“数据”更改为“通知”,否则您的消息将不会在您的设备上收到。

关于android - 使用 AWS SNS 的 Firebase 云消息传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45934192/

相关文章:

android - 为什么我不为 Android 应用程序选择所有版本?

android - 如何仅更改工具栏中的后退箭头?

android - 多项目结构的 Gradle 构建速度非常慢

firebase - FirabaseAuth无法在Flutter中捕获异常

angular - 通过 Firebase 在 Angular 中使用 Observable 和 Subscribe

ios - Swift Firebase 查询 - 快照中没有结果

android - 在 android LatinIME 键盘中使用自定义字体

amazon-web-services - 如何在 CloudFormation 中传递字符串列表作为参数?

amazon-web-services - Gremlin - 海王星 - 如何正确返回顶点集属性

amazon-web-services - 获取 Cloudformation Stack 中所有资源的 ARN