其實是可以不用的
從API console可知, 是可以設定允許從任意IP傳送的
再來看看一般的流程:
1. Regster:
2. 取得Registration ID後將ID送至ServerGCMRegistrar.checkDevice(this);
GCMRegistrar.checkManifest(this);
final String regId = GCMRegistrar.getRegistrationId(this);
if (regId.equals("")) {
GCMRegistrar.register(this, SENDER_ID);
} else {
Log.v(TAG, "Already registered");
}
3. Server之後可以用這ID送訊息給這一支手機
由"2"看來, 其實Registration ID是關鍵, 而不是Server, 任何人只要有Registration ID, 就可以傳送訊息給這隻手機了
做了個小小實驗, 寫了一支Activity同時具備了收訊息以及傳送(給自己)的能力:
http://bit.ly/Q9qSag
想到的應用: 兩隻手機透過條碼或藍牙交換Registration ID, 就可以透過GCM互傳訊息了
缺點: Registration ID如果有變(GCM是有可能更換ID), 就失效了
via Blogger http://bit.ly/Q9qSai