《宣告》
上一節講了gcm方式實現前的一些必要準備工作,和訊息接收的實現。
這一節我們來講一下傳送訊息的實現。
上一節也已經講了,gcm方式其實並不區分嚴格的客戶端和服務端,對於開發者來說,任何一方都可以是客戶端或者服務端,只要搭建的環境滿足兩個端的要求。也就是說,對於使用者來說,可以既是傳送方也可以是接收方。這樣,gcm方式也就不只是可以用來推送廣告了,同樣也可以拿來做即時聊天。但限於gcm的種種缺陷,用來做即時聊天並不是最好的方式。(對於訊息推送的各種方案對比和選擇,可以瀏覽我的另一篇博文
然後,我們寫乙個main函式來執行傳送乙個訊息:
public static void main(string args) catch (ioexception e)
}
其中,apikey是你在谷歌api控制台頁面生成的乙個字串(在上一節有講到),用來驗證訊息傳送方的合法性的。
deviceregid是由客戶端生成。在客戶端完成註冊後,呼叫gcmregistrar.getregistrationid()得到,並應該傳送給伺服器儲存起來。
就這麼簡單,還可以使用send的其它過載方法,給多個註冊id傳送訊息。
以上是服務端傳送訊息的簡單實現。
客戶端**:
服務端**:
Android訊息推送原理
出處 產品的角度 功能需要,比如說資訊類產品的新聞推送 工具類產品的公告推送等等 運營的角度 活動運營需要,比如說電商類產品的 活動 召回使用者 提高活躍度等等 作為開發者,不要有需求就接,應該多思考 多理解使用者 功能的使用場景,有助於我們更好地去選擇合適的開發方式 作業系統有自身的訊息推送功能 ...
android訊息推送(二)之 XMPP協議
xmpp協議,中文名為可擴充套件通訊和表示協議,是一種以xml為基礎的開放式實時通訊協議,它將需要實時通訊的訊息嵌入到xml結構體中,不僅具有很好的可擴充套件性,還有較強的可讀性。xmpp協議規定,每個客戶端是使用jid來作為身份標識,例如 user domain resource 比如說 from...
android訊息推送 mqtt協議
對與訊息推送是什麼個概念,在此就不贅述啦。google自帶的c2md服務,可以幫助我們實現該功能,可以該伺服器在國外,所以鑑於網速等各種條件限制,我們也沒法實現。為解決該問題,在讀了大量的部落格等質料之後,終於見到啦陽光。第三個是由ibm提供的mqtt協議的實現,就相當於乙個 開啟1883埠,在se...