2017-02-17 133 views
2

我正在使用Firebase雲消息傳遞向我的應用的客戶端發送通知。客戶端可以是三種支持平臺(ios,android,web)中的任何一種。Firebase雲消息傳遞Click_action格式是特定於平臺的嗎?

我希望用戶能夠點擊通知來啓動應用程序。
爲此我必須在通知中指定一個click_action。 對於似乎是簡單字符串的ios和android。 對於網絡它將是一個網址。

我應該如何發送適用於潛在的混合設備的通知?

我必須分開設備並向他們發送不同的消息嗎?

+0

plz明確解釋你想要的 –

+0

你想發送所有平臺的Android IOS和網絡 –

+0

Web的通知是在firebase-messaging-sw中收到的。我想,我可以將字符串映射到ios或android映射到那裏的url。你怎麼看? –

回答

3

FCM基於由設備生成的ID different.if要發送的所有平臺,其中R difrent設備到設備和平臺的平臺和捲曲會是不同的平臺。對於不同的Android不同,適用於iOS不同,網絡上的作品你必須調用3倍方法(IOS,Android,網絡)蒙山不同的有效載荷或針對不同的平臺。我米的雙平臺發送的ios和android以使得兩個不同的功能,並呼籲同時凝乳會議

+0

請注意,這種方法很難在FCM中使用設備組和主題。您將不得不創建特定於平臺的組和主題。 – nicoqh

3

更新: FCM增加了一項最新功能,可以爲特定平臺提供特定參數,稱爲Platform Overrides


根據您的有效負載,每個平臺可能會處理相同的通知。

click_action參數支持所有3個平臺(Android,iOS設備的Web):

與通知用戶點擊相關聯的動作。

每個具有不同的音符:

  • 的Android

    如果指定,則具有匹配意圖過濾器的活動,當用戶點擊該通知啓動。

  • 的iOS

    對應於在有效載荷的APN類別

  • 網絡

    對於所有URL值,需要安全的HTTPS。

的Web不說,你只能有網址,因爲它的價值,只是,如果是一個URL,它應該有安全的HTTPS(出於安全原因)的說明。

只要您能夠相應處理它們並且您喜歡,就可以爲所有平臺發送單個通知。但是,也可以在其他答案中建議,最好根據平臺發送不同的有效負載。

+0

在您對[相關問題](https://stackoverflow.com/q/48457799/4815718)的評論中,您指出不支持「click_action」。這個評論是否過時了? –

+0

忽略我以前的評論。我現在看到這個答案是針對傳統FCM的。我對_Platform Overrides_的鏈接感到困惑,它描述了FCM v1 HTTP協議選項。 –

相關問題