簡単なGoogle Chrome拡張機能を作成し、それにGoogle Cloud Messaging for Chrome機能を追加しましょう。
2013年5月より、Google Cloud Messaging for Chromeのサービスが開始されました。
Google Cloud Messaging (GCM) for Chromeは、Google Chromeの拡張機能(Extension)のユーザに対して、拡張の開発者のサーバからプッシュ通知を送ることのできるサービスです。Chrome Packaged Appsに対して送信することもできます。
もともとGCMはAndroidアプリに対してメッセージをプッシュするためのテクノロジとして生まれました。GCMを使うことで、クライアントからサーバに対して頻繁にポーリングをすることなく、Android端末に対して最新の情報を必要なときに送ることができるのです。それと同じような機能が、このたび、Google Chromeでも使えるようになったのです。
この記事は、簡単なGoogle Chrome拡張機能を作成し、それにGCM機能を追加していくチュートリアルとなっています。拡張の開発の初歩も簡単に解説しますので、Chrome拡張の開発自体が初めてという方もぜひ試してみてください。
GCM for Chromeには、次のような制限があります。
Android開発者の方の中にはGCM for Androidの経験者もいらっしゃるでしょう。
GCM for Chromeは、「アプリをインストールしたユーザ個々に対して、Googleの提供するAPIを経由し、サーバからpush通知を送る」という点は一緒です。開発の手順やデータの流れなどは把握しやすいかとは思いますが、異なる点もたくさんあります。ここで比較します。
GCM for Androidのサーバおよびクライアント向けには公式のライブラリが提供されていますが、これらはGCM for Chromeには利用できません。執筆時点では、GCM for Chrome用の公式ライブラリなどは提供されていません。
Android向けのGCMではペイロードをkey-value形式で送れるようになっていましたが、GCM for Chromeでは、ペイロードは文字列1本という形になっています。複雑なデータを送りたい場合は、JSON文字列として送って拡張の側でパースするなどの工夫が必要となります。
また、GCM for Androidでは可能な「複数宛先への同時送信」「Collapse Keyによってメッセージをまとめる」などの機能も現時点のGCM for Chromeにはありません(サブチャンネルという機能があり、4種類まではメッセージをまとめることもできます。)
本記事では、簡単なChrome拡張にGCM機能を組み込んでいきます。次のような手順で作業を進めますので、だいたいの流れを把握しておいてください。
Copyright © ITmedia, Inc. All Rights Reserved.