Push notification 推送通知:为什么在谷歌上使用亚马逊SNS';s GCM/FCM?

Push notification 推送通知:为什么在谷歌上使用亚马逊SNS';s GCM/FCM?,push-notification,google-cloud-messaging,apple-push-notifications,phonegap-build,amazon-sns,Push Notification,Google Cloud Messaging,Apple Push Notifications,Phonegap Build,Amazon Sns,我已经使用Phonegap Build为Android和iOS创建了一个移动应用程序。去年,我几乎完成了使用GCM(Google Cloud Messaging)进行远程推送通知(也可以通过苹果的APN发布)的代码编写,但该项目被搁置 今年这个项目重新启动,我发现谷歌已经把一切都改成了Firebase(FCM)。然后我读了一些关于Amazon SNS处理通知的诱人内容。就在我开始认为SNS可能是一个更好的选择时,我注意到您仍然需要设置GCM/FCM,并将所有这些细节传递给SNS 那么,当我还需要

我已经使用Phonegap Build为Android和iOS创建了一个移动应用程序。去年,我几乎完成了使用GCM(Google Cloud Messaging)进行远程推送通知(也可以通过苹果的APN发布)的代码编写,但该项目被搁置

今年这个项目重新启动,我发现谷歌已经把一切都改成了Firebase(FCM)。然后我读了一些关于Amazon SNS处理通知的诱人内容。就在我开始认为SNS可能是一个更好的选择时,我注意到您仍然需要设置GCM/FCM,并将所有这些细节传递给SNS

那么,当我还需要进行完整的FCM设置时,使用SNS有什么好处吗这两项服务似乎提供了相同的功能:如果需要,与APN交互、订阅主题、为您提供漂亮的API/SDK等。据我所知,应用程序代码和服务器端代码并不简单。为什么要在FCM上添加另一层(SNS)

(我尽量不让这成为一个基于观点的问题:我想知道SNS是否为我节省了任何精力,给了我任何优势,或者添加了FCM没有的任何功能。)

只是一些想法

  • 如果您已经在使用一些移动AWS SDK,那么将其用于SNS也会更方便
  • 这也有助于保持你的应用程序更小
  • 作为一名开发人员,您会更高兴,因为API调用在某种程度上是统一的
  • 如果您的后端托管在AWS基础设施上,您可以使用EC2实例(以及Lambdas等)的IAM角色进行调用,而无需访问密钥/密钥
  • 您可以在CloudWatch中获取指标

  • 但是Firebase云消息是免费的:)

    让我们先回答几个问题

    1.是否要开发、维护和运行与GCM对话的代码?
    2.如果您选择为其他移动平台开发应用程序,是否希望在其他平台(iOS、Kindle Fire)上也这样做。
    3.您想自己管理注册id的更改吗?
    4.您是否关心通知是否在几毫秒后发送给您的用户?
    如果您对上述任何问题的回答都是否定的,我建议您使用SNS向iOS、Android和Kindle Fire设备发送推送通知

    SNS与GCM对话,向android设备发送通知。以下是SNS可以为您提供的服务

    向异构平台发送通知的简单API。
    管理应用程序注册ID。作为开发人员,您不必担心注册ID的更改。
    比例非常好。如果你的应用变得超级流行,你不必担心管理基础设施。
    能够容忍GCM停机和节流

    为什么不包括“完全披露”部分?