星期三, 3月 02, 2016

簡介透過GCM達成推播功能 (二)

如何取得Sender ID?


進入Google developers console並登入帳號。
如果此帳戶有已建立的專案,登入後會看到已建立的專案的資訊。
如果此帳戶無建立任何專案,登入後會看到建立專案的資訊。

建立專案
專案名稱欄位那填入專案名稱,此名稱由開發人員自訂。


取得Sender ID
專案建立完成後,便可以在首頁->資訊主頁上找到兩個專案ID,一個ID是由英文字母和數字組成;另一個由數字組成。純數字組成的專案ID就是Sender ID





如何取得API Key?


進入Google developers console並登入帳號。

建立憑證
由左側選單中API管理員進入憑證頁面。
點選建立憑證選擇API金鑰。接著選擇伺服器API金鑰。



填入名稱和伺服器IP位址,建立金鑰。


建立完成後,此金鑰為API Key




啟用Google API
在首頁->資訊主頁上找到使用Google API進入。


選擇欲使用之Google API


啟用Google Cloud Messaging。





其他方法

另外從configure your API project也可以取得Sender ID和API Key。



星期二, 3月 01, 2016

簡介透過GCM達成推播功能 (一)

簡介透過GCM達成推播功能 (一)


透過GCM程式開發人員能從伺服器發送資料到應用程式上。以下簡介GCM


架構

整體架構由三個部件組成。
1.      Google GCM connection server
2.      App server
3.      Client App



證書

GCM中使用的IDsToken是用來確保各方已經認證,如此訊息便能傳送到正確的地方。

1.      Sender ID – 不會重複的數值。在Google Developer Console中配置API專案時取得。註冊時使用,GCM用來辨識App server已被允許傳送訊息到Client app
2.      API Key – API Key儲存在App server,讓已認證的App server存取Google服務。在HTTP中,API Key被包含在POST請求的標頭中。
3.      Application ID – Client app用來註冊已便能接收到訊息。它是平台獨立的,在Android平台上利用package name作為Application ID
4.      Registration Token – GCM針對Client app產生的ID,允許Client app接收訊息。另外特別需要注意的是Registration Token必須被保密。



GCM的作用?

Google Cloud Messaging(GCM)是處理應用程式伺服器(App Server)與手機應用程式(Client App)間的訊息之傳送、路由與排隊的服務。





如何透過GCM實現推播?



1.      Android裝置向GCM傳送Sender IDAppilcation ID進行註冊。
2.      註冊成功。GCMAndroid裝置回傳Registration Token
3.      Android裝置接收到Registration Token,向伺服器傳送Token
4.      伺服器將Registration Token存入資料庫,待往後使用。

a.      當需要進行推播時,伺服器向GCM傳送訊息與Registration Token
b.      GCM利用Registration TokenAndroid裝置傳遞訊息。