新的谷歌Play应用和火力地堡云端通讯

问题描述:

我发展与科尔多瓦的应用程序,但我有更根本的问题要问这么多包涵:新的谷歌Play应用和火力地堡云端通讯

  1. 有关谷歌新的应用程序玩,我听说可以只使用FCM。我想重新检查一下。
  2. 从摆弄,我得到的印象是,支持FCM的Android设备必须是API Level 24或更高版本。真的吗?
  3. 如果2是真的,这意味着要支持旧设备,我需要在客户端上使用相同的旧GCM API。因此客户端代码将在连接到GCM时写入。那是对的吗?
  4. 然后,我可以只编写Android的所有代码,就好像连接到GCM一样?

目前我无法使FCM的Cordova插件编译和正常工作。我希望我可以在电话设备上使用GCM插件。

+0

什么是你在你的基础API的最低水平的假设? – Vaiden

  1. 不一定。如果你已经有一个GCM实现的应用程序,那么它很酷。如果您打算创建新项目,则必须使用FCM,因为您只能通过创建Firebase项目来生成服务器密钥(FCM所需的凭据)。

  2. 我不确定你听到/看到了这个。你能提供链接吗? Android 24 is referring to Nougat,对吗?最近发布了哪些内容。我不认为他们会像这样取消对其他版本的支持。

    这是可能的,你正在与Google Play services and Firebase for Android will support API level 14 at minimum混淆了。

  3. FCM向后兼容GCM。见here

  4. 编号FCM与GCM有不同的实现。我认为这是在Migration guide中指定的。或者你指的是服务器端编码?如果是这样,那么there isn't much difference

+0

通过#4,你的意思是Android设备上的应用代码本身?那意味着它不会向后兼容我。 #3如何成为真实? – huggie

+0

实现是不同的。但是,如果您拥有GCM实施应用程序的注册令牌并用它通过FCM发送消息,则它们仍应该能够接收消息。 FCM服务本身与GCM向后兼容。 –

+0

我被卡住了。因为[cordova-plugin-firebase](https://github.com/arnesson/cordova-plugin-firebase)似乎使用像isDeviceProtectedStorage这样的API,它只在API 24(Nougat)中可用。替代[cordova-plugin-fcm](https://github.com/fechanique/cordova-plugin-fcm)尚未开发3个月。如果我不能使用与原始GCM接口的[phonegap-plugin-push](https://github.com/phonegap/phonegap-plugin-push),我没有太多的选项。 – huggie

According to Google's dev blog,新FCM(10.x的)要求API级别> = 14(的Android 4.0.1)。

您可以通过查看migration guide得到支持GCM和FCM差异性之探源的预览。

如果你在支持旧设备(API等级> = 9)设置你可以用FCM 9.x的坚持这比依靠GCM更好。

所以恕我直言,有没有真正的理由支持比,你已经拥有你不想升级的遗留代码的情况下其他GCM。