2014-04-19 116 views
2

我有云數據庫,因此我擁有所有設備的註冊ID。Google Cloud Messaging - 發送消息

我必須使用服務器發送消息嗎?我可以直接從一臺Android設備向另一臺使用regID發送消息嗎?我可以使用Android設備作爲服務器嗎?

回答

3

更詳細的描述如果每一個Android設備訪問註冊ID的數據庫,它可以發送GCM訊息到其他設備不使用的服務器。您只需對GCM執行相同的HTTP請求,您通常會從服務器執行該請求。該請求將直接發送到GCM服務器,然後從那裏發送到其他設備上的應用程序。要執行該請求,除了收件人註冊ID之外,還需要您的應用程序知道發件人ID(用於註冊到GCM)和API密鑰(用於發送消息)。您可以使用gcm.send方法。該方法將消息發送到您的服務器。

+0

我已經看過了這裏的Http方法,它的工作原理是http://developer.android.com/google/gcm/http.html –

0

是的,你可以發送郵件到您的服務器:

data.putString("my_message", "Hello World"); 
data.putString("my_action", "com.google.android.gcm.demo.app.ECHO_NOW"); 
String id = Integer.toString(msgId.incrementAndGet()); 
gcm.send(SENDER_ID + "@gcm.googleapis.com", id, data); 

可以的直接發送消息給其他設備,因爲只有谷歌的服務器知道從哪裏接收設備。消息的方案是這樣的:

Sender > Google's server > Your server > Google's server > Receiver

理論上你可以接收器的ID添加到發送數據時,得到它的服務器上,然後發送新郵件到具體的設備。

您可以找到documentation

相關問題