2017-02-28 159 views
7

我想弄清楚如何使用REST API從應用服務器管理FCM設備組。管理FCM設備組

據我所知,這些都是最新的文檔:https://firebase.google.com/docs/cloud-messaging/android/device-group#managing_device_groups

這裏是我已經可以做到:

  • 創建一個新的設備組一些設備令牌
  • 添加設備令牌到現有設備組

這就是我不知道該怎麼做,因爲文檔中沒有提及它:

  • 根據notification_key_name查詢設備組是否已經存在。

    解決方法1:如果我試圖創建一個組與隨後已經存在我得到一個錯誤,告訴我這麼一個notification_key_name ,但似乎 像非常哈克的方式找出來。

    解決方法2:將信息存儲在我自己的其他地方。

  • 找出哪些設備令牌(registration_id)屬於設備組。

    解決方法:像以前一樣,將自己的信息存儲在其他地方。

  • 從設備組中刪除設備令牌(registration_id)。

    解決方法:無。

  • 刪除設備組。

    解決方法:無。

謝謝!

回答

4
  • 設備組查詢是否已經存在,基於其notification_key_name

你的第二個解決方法是要走的路。您應該將其存儲在您的應用服務器中,與您同時存儲註冊令牌的位置相同。


  • 找出哪個設備令牌(registration_id)屬於一個設備組。

與上述解決方法相同。您必須在App Server上管理這些詳細信息。管理這些細節是開發者的責任。如果註冊設備被移除,匹配操作,您也必須將其從App Server中刪除。


  • 從設備組中移除設備令牌(registration_id)。

我不確定你在這裏需要什麼。在documentation對從設備組中移除註冊標記細節:

添加從設備組和刪除設備

要添加或從現有的組中刪除設備,發送與operation POST請求參數設置爲addremove,並提供用於添加或刪除的註冊令牌。

注意:如果您從設備組中刪除所有現有的註冊令牌,FCM將刪除該設備組。

HTTP POST請求

例如,要添加的裝置與註冊ID 51到APPUSER-克里斯,你會發送這個請求:

{ 
    "operation": "add", 
    "notification_key_name": "appUser-Chris", 
    "notification_key": "APA91bGHXQBB...9QgnYOEURwm0I3lmyqzk2TXQ", 
    "registration_ids": ["51"] 
} 

應答格式

成功添加或移除設備的請求將返回如下所示的notification_key:

{ 
    "notification_key": "APA91bGHXQBB...9QgnYOEURwm0I3lmyqzk2TXQ" 
} 

注意notification_key_name不需要添加/刪除註冊標記,但包括它保護您免受意外使用不正確的notification_key


  • 刪除的設備組。

從音符在上面的文檔:

注意:如果從設備組中刪除所有現有註冊標記,FCM刪除設備組。

+1

類似(可能有幫助)後[這裏](http://stackoverflow.com/q/42247765/4625829)。 –

+0

謝謝AL!真的很有幫助。我無法相信我錯過了關於刪除文檔中的設備和設備組的部分。這是我通過瀏覽它而不是徹底閱讀它的原因,對不起! –

+0

不客氣。乾杯!:) –