▽1
●
a-kuma3 ●190ポイント ベストアンサー |
GCM (Google Cloud Messaging) のアーキテクチャの説明。
http://developer.android.com/google/gcm/gcm.html
英語、厳しいなあ、と思ったら、日本語訳してくれてる人もいた。
Google Cloud Messaging for Android ( GCM ) は、開発者がサーバから Android デバイス上の Android アプリケーションにデータを送信できるようにする無料のサービスです。
http://www.techdoctranslator.com/android/guide/google/gcm/gcm
概念図としては、↓のスライド9 と 17 が参考になると思います。
http://www.slideshare.net/tsuru_ee/gcm-15657489
スライド17
「メッセージの送信」のイベントのシーケンスの箇所を読めば、
それともAndorid端末AからAndroid端末Bにサーバを使わないGCMでの直接通信は可能でしょうか?
という質問で、「サーバ」というのがGCMサーバのことを指しているならば、的を外した問いだということが分かるでしょう。
# ってとこまでは、分かっていて質問しているような気もしてますが。
もし、「サーバ」を、アプリケーションサーバという意味で使っているならば、Android 端末が「アプリケーションサーバ」になることは可能です。
GCM の機能を使用したクライアントの Android アプリケーションの作成する前に、以下の条件に合ったアプリケーション サーバが必要です。
http://www.techdoctranslator.com/android/guide/google/gcm/gcm#server
- クライアントとの通信が可能。
- GCM サーバに HTTPS リクエストを発信可能。
- リクエストのハンドリングと必要に応じて 指数 バックオフ を使用した再送が可能。
- API キーとクライアント登録 ID のストアが可能。API キーはメッセージを送信する POST リクエストのヘッダに含まれる。
中身はきちんと見てないですが、Android 端末がアプリケーションサーバとして動作している例を探してみました。
http://memories.zal.jp/WP/blog/20130419_2315.html
Androidアプリから直接GCMサーバへメッセージ登録し通知を受ける
http://memories.zal.jp/WP/blog/20130419_2315.html