2012-08-03 121 views
3

我正在使用Google Cloud Messaging通過推送通知通知Android應用程序。我已經在PHP中實現了應用程序服務器。當我運行Android應用程序時,設備從GCM服務器獲取註冊ID,並將註冊ID發送到PHP服務器(應用程序服務器)。但我從服務器獲取以下的HttpResponse:不接收來自GCM服務器的消息

{ 
    "multicast_id": 7015234441922271670, 
    "success": 1, 
    "failure": 0, 
    "canonical_ids": 0, 
    "results": [{ 
     "message_id": "0:1344007383866721%2adac3a0ad8b3148" 
    }] 
} 

所以,結果收到了交付的消息,因爲成功的標誌是1,但是當我在Android應用中顯示的消息,它顯示任何內容(空)。我無法弄清楚該消息會發生什麼。

回答

6

我有相同的問題...這就是我想要在本週末: http://developer.android.com/guide/google/gcm/gcm.html

摘錄:

注意:如果您的組織有限制流量或防火牆互聯網,您需要將其配置爲允許與GCM連接。要打開的端口是:5228,5229和5230.GCM通常只使用5228,但它有時使用5229和5230.GCM不提供特定的IP。它經常更改IP。我們建議不要使用ACL,但是如果您必須使用ACL,請採取廣泛的方法,例如此支持鏈接中建議的方法。

+0

非常感謝你,我的無線網絡阻止了這些端口,我正在調試和重建幾個小時。這終於幫助了我!非常感謝。我正在使用** PushPlugin和Phonegap ** Build和正常的Phonegap CLI重建很多次,直到我**切換到使用我的移動數據連接,這沒有阻止這些端口 - 它工作!**:D – AmpT 2014-01-28 21:32:08

+0

優秀| |我試圖找出這個問題近6個小時,現在我能夠從GCM獲得通知。非常感謝。它真的很有用。我的組織使用「Cyber​​oam」作爲防火牆,限制了For The GCM推送通知的端口。我從其他設備使用移動熱點,現在它運作良好。 – Jigar 2014-09-05 10:14:48

0

在PHP代碼中添加此

$data = array(
'registration_ids' => array($reg), 
'data' => array(
'type' => 'New', 
'title' => 'App Name', 
'flag' => '1', 
'msg' => 'New Message') 

希望這會有所幫助。

相關問題