Overviewを翻訳してみた。Overviewを翻訳してみた。開発ちょっと業務で使う予定があり調べ物をしていたのだが、少し時間が余ったりしたので、ちょっとGoogleのドキュメントを翻訳してみました。いっても、Overview(概要)のページだけですが。素人のつたない英訳なので細かい部分など間違いはあるかもしれませんが、大まかな部分は間違っていない・・・はずです。(^^;若干行間が大きくて読みにくいですが、ウェブリブログの仕様ということでご承知いただければと思います。(CSS書いて直せばいいんですが、さすがにそこまでやる気力はありませんでした...)原文との対応がわかりやすいほうがいいかと思ったので、各項目の見出しはそのままにしています。開発者が自身のサーバからAndroidデバイス上のアンドロイドアプリケーションに向けてデータを送信したり、ユーザーデバイスからクラウドへとメッセージを送信することを助けるサービスです。このクラウドは、読み取りサーバから軽量なメッセージをAndroidアプリケーションに伝えたり(たとえばサーバとバックエンドで同期し、「新着メール」通知をアプリケーションに知らせたりします)、またはメッセージに最大4KBのデータを含めることも可能です(このため、インスタントメッセンジャーのようにアプリに直接データを受け渡すことが可能です)。GCMサービスは、Androidアプリケーションが動作する全てのターゲットデバイスへのメッセージの待ち行列に関する全ての処理を行います。Started」の章を確認して下さい。GCMの主な特徴は次の通りです。サードパーティーアプリケーションサーバ(第3者が開発したアプリケーションのサーバ)からのメッセージを、その開発者のAndroidアプリケーションへ届けます。Serverを利用することで、あなたはユーザーデバイスからの送信メッセージを受け取ることができます。Androidアプリケーションがメッセージを受信する際、Androidデバイス上で起動されている必要がありません。AndroidアプリケーションはIntentブロードキャストを通じてメッセージを受信し、起動するため、アプリケーションにはブロードキャストの受信機能と権限が適切に設定されてさえいればよいのです。この機能には、ユーザーインターフェースや処理用のメッセージデータは何も用意されていません。GCMは生のメッセージデータをAdnroidアプリケーションにそのまま届けるため、これをどのように処理することもできます。アプリケーションは受信情報を通知し、画面に個別のユーザーインターフェースを表示することもできれば、何も通知せず、静かにデータと同期を取ることもできます。APIsが動作するエミュレーターである必要があります。Storeを通じて配信されるアプリケーションであれば、なんら制限されること無く動作することができます。Servicesのために既存接続を使用します。3.0以前のデバイスで動作する場合には、ユーザーに対して、端末上でGoogleアカウントを設定するよう、要求します。これは、Android4.0.4以降を利用するユーザーは必要としません。Concepts(用語表)この表は、GCMに関する重要な用語と概念をまとめたものです。これらは以下のカテゴリに分類されます。このエントリーはGCMの主要な役割として再生されます。このIDとトークンは当事者の認証し、メッセージを正しい場所に届けるために、GCMのさまざまな段階で使用されます。Appデバイス上で実行されている、GCM対応Androidアプリケーションのことです。Storeがインストールされている必要があり、Android4.0.4以下のデバイスの場合は、少なくとも一度以上、Googleアカウントでログインしている必要があります。2.2以上が必要です。ServerGCM実装の一部として、あなたが用意する必要のあるアプリケーションサーバです。このサーバが、GCMコネクションサーバを通じて、Androidアプリケーションがインストールされたデバイスに対して、データを送信します。ServersGoogleが提供するサーバで、あなたのアプリケーションサーバからメッセージを受け取り、これをデバイスに送信します。IDあなたがAPIコンソールから取得するプロジェクトナンバーです。Startedで説明しています。IDは、デバイスへのメッセージ送信が許可されたアプリケーションサーバかどうかの特定や認証プロセスで使用されます。IDAndroidアプリケーションがメッセージを受信するために登録します。Androidアプリケーションは、マニフェストファイルのパッケージネームで識別されます。これによって、メッセージは適切なAndroidアプリケーションへと届けられます。IDAndroidアプリケーションがメッセージを受信することを可能にするために、GCMサーバによって発行されるIDです。Androidアプリケーションの登録時に発行されるIDで、登録時にアプリケーションサーバに送信され、Androidアプリケーションから、デバイスの識別やメッセージを受信済みかどうかの情報を取得するために使います。IDは、特定のデバイスでAndroidデバイスで実行されている、特定のAndroidアプリケーションと関連付けされています。IDを明示的にバックアップすることは避けて下さい。あなたが端末をバックアップした際、アプリは共有環境も全てバックアップを行います。IDを明確に除外していなかった場合は、新しいデバイスで再登録仕様とした際、エラーが発生することになります。AccountGCMが動作するためには、Android4.0.4以前のバージョンが動作する端末では、少なくとも1回、Googleアカウントにアクセスしている必要があります。Tokenサードパーティアプリケーションサーバ上に保存されているAPIkeyのことで、Googleサービスに登録した際に与えられるものです。APIkeyには、POSTリクエストヘッダーおよび送信するメッセージが含まれています。Overview(構成概要)GCMは、Googleによって提供されるコネクションサーバに実装されており、サードパーティーアプリケーションサーバとコネクションサーバ、としてGCM対応クライアントが動作するAndroidデバイスの相互に作用します。各構成要素はどのように作用するのか。Googleが提供するGCMコネクションサーバはサードパーティーアプリケーションサーバからメッセージを受け取り、そしてGCM対応アプリケーション(以下、クライアントアプリ)が動作するデバイスに対して、このメッセージを送信します。サードパーティアプリケーションサーバは、あなたが選択したGCMコネクションサーバに対して働きかけるよう実装されます。アプリケーションサーバはGCMコネクションサーバにメッセージを送信し、コネクションサーバはそのメッセージをキューに蓄積し、デバイスがオンラインになったとき、デバイスに対してこれを送信します。Serverの項目を確認して下さい。クライアントアプリとは、デバイス上で動作するGCM対応Androidアプリのことです。IDを取得する必要があります。あなたがXMPP(CCS)コネクションサーバを利用する場合、クライアントアプリはコネクションサーバに対してメッセージを「送信」することもできます。Clientの項目を確認して下さい。Flow(一連の流れ)GCMの有効化。モバイル端末上で動作しているAndroidアプリケーションが、メッセージの受信状態にあることを登録します。サードパーティーアプリケーションサーバが、端末にメッセージを送ります。AndroidアプリがGCMサーバからメッセージを受信します。詳細な動きについては、各項目を参照して下さい。Clientに記載の手続きを行う必要があります。AndroidアプリケーションはこのIDを保持し、(たとえば、onCreate()メソッドの中ですでに登録済みかどうかを判定したりするために)使用します。メッセージの送信ここに、アプリケーションサーバがメッセージを送信した際に発生するイベントの流れを示します。アプリケーションサーバがGCMサーバへメッセージを送信します。Googleは、対象端末がオフラインだった場合には、メッセージをキューに蓄積します。端末がオンラインになったとき、Googleはメッセージを端末に送信します。デバイスは、適切な権限と機能を許可されたAndroidアプリケーションに対して、Intentブロードキャストを介してメッセージを渡すことで、ターゲットとなるAndroidアプリケーションだけがメッセージを受信することができます。このとき、Androidアプリケーションが起動されます。Androidアプリケーションは、メッセージを受信したときには、起動されている必要はありません。Androidアプリケーションがメッセージプロセスを実行します。Androidアプリがバックグラウンドで動作したい場合には、PowerManager.WakeLockを取得し、全ての処理をService内で行うこともできます。メッセージを受信したくない場合は、GCMの登録を解除することができます。message(メッセージの受信)以下の内容は、メッセージを受信したモバイル端末にインストールされた、アプリケーション内部で発生するイベントの動きです。システムがメッセージを受信すると、もし受信メッセージのペイロード内に生のkeyとその値のペアを生成します。extrasに設定し、対象となるAndroidアプリケーションに渡します。Androidアプリケーションは、com.google.android.c2dm.intentRECEIVEのIntentの、キーと処理データから、生のデータを抽出します。何かのときにでも誰かの役に立てれば幸いです。=========================気になる情報。近況報告など前回の投稿から1か月以上が経過しました。