0

我發展與科爾多瓦的應用程序,但我有更根本的問題要問這麼多包涵:新的谷歌Play應用和火力地堡雲端通訊

  1. 有關谷歌新的應用程序玩,我聽說可以只使用FCM。我想重新檢查一下。
  2. 從擺弄,我得到的印象是,支持FCM的Android設備必須是API Level 24或更高版本。真的嗎?
  3. 如果2是真的,這意味着要支持舊設備,我需要在客戶端上使用相同的舊GCM API。因此客戶端代碼將在連接到GCM時寫入。那是對的嗎?
  4. 然後,我可以只編寫Android的所有代碼,就好像連接到GCM一樣?

目前我無法使FCM的Cordova插件編譯和正常工作。我希望我可以在電話設備上使用GCM插件。

+0

什麼是你在你的基礎API的最低水平的假設? – Vaiden

回答

1
  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

1

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。