2016-07-31 61 views
0

我正在開發一個具有java後端的cordova應用程序。我想知道在Android/Ios(通知托盤)中顯示推送通知是否必須使用GCM服務? 我在後端使用Apache Kafka,MQTT代理。使用完全自定義的解決方案,是否可以使用這些解決方案顯示推送通知?是否強制使用GCM服務來顯示推送通知?

使用MQTT &其他經紀人我能夠發送實時數據給用戶,但如何將這些消息顯示爲通知欄中的本地通知是我的問題。

+0

在舊手機上,您可以使用任何東西。在6.0+版本中,您可能遇到了打盹問題 - 手機會關閉所有網絡,但如果屏幕關閉並且沒有插入一段時間,那麼這些應用會列入白名單,並且會打開一個小時左右的網絡窗口。 GCM被列入白名單。 AN MQTT線程不會是 –

回答

0

是的,您需要使用GCM將推送通知發送到Android設備。您甚至可以使用GCM將推送通知發送到iOS設備(GCM向APNS發送請求(Apple推送通知服務)以使其工作)。

但是GCM for iOS並不值得信賴。

您可以使用任何後端向您的設備發送推送通知。您只需要向GCM/APNS發送請求。

這是用於推送通知的cordova plugin

與GCM集成非常容易,但它需要一點點的努力與APNS。

大多數人使用Pushwoosh等第三方付費服務來實現他們的推後端,因爲它方便。有一個免費的替代OneSignal,但它跟蹤您的使用情況。

按照此guide設置推送APNS。 (您可以使用本指南中的安裝證書部分,因爲您沒有使用C#)

+0

此外,APNS要求您在防火牆上打開端口2195,以獲得整個IP地址範圍17.x.x.x 如果您擁有非常安全的生產服務器,則這可能會造成問題。 https://support.apple.com/zh-CN/HT203609 – Lakshay

+0

有趣的人使用第三方服務。幾乎沒有任何地方。 –

+0

@GabeSechan你一定要對:) – Lakshay