こんにちは。
ぶっちです。
今回は、「GCM(Google Cloud Messaging)を利用した、Android端末へのプッシュ通知」について調査&確認を行った内容を書きます。
概要としては、Android端末の実機を使用しての、Gordovaで作成したアプリでのGCMのメッセージ受信の手順となります。
■確認の為に用意したもの
・Google Developers Consoleでのアプリ登録
・Gordovaで作成したアプリ(PushPpluginを利用 ※phonegap-plugin-push)
・Android実機(SO-02F Android4.4.2)
・GCMへ配信要求を行うためのスクリプト(php)
■GCMの確認に必要な情報
・Google Developers Consoleで登録したアプリの情報
プロジェクト番号
登録したアプリの情報に記載されている。プロジェクトIDとは違うので注意
APIキー
登録したアプリで、G00gleAPIのCloud Messaging for Androidを有効にした時に発行されるAPIキー
Registration ID
Android端末とアプリの組み合わせ毎に生成されるID
■確認手順
1.Google Developers Consoleでのアプリ登録を行い「プロジェクト番号」を取得
2.1で登録したアプリで、G00gleAPIのCloud Messaging for Androidを有効にし、「APIキー」を取得
3.Gordovaでアプリを作成
Gordovaでプロジェクトを作成
プロジェクトのルートディレクトリで「cordova plugin add phonegap-plugin-push」のコマンドを実行し、push用のプラグインをプロジェクトに追加
下記のスクリプトを含んだアプリを実記にインストールし、RegistrationIdを取得する
var push = PushNotification.init({ “android”: {“senderID”: “[プロジェクト番号]”},
“ios”: {“alert”: “true”, “badge”: “true”, “sound”: “true”}, “windows”: {} } );
push.on(‘registration’, function(data) {
alert(“registrationId:” + data.registrationId);
$(“#app-status-ul”).append(‘<li>registering ‘ + data.registrationId + ‘</li>’);
});
4.用意したGCMへ配信要求を行うためのスクリプトに取得したRegistrationIDを指定して実行
通知が届かない場合・・・
・4でエラーメッセージが帰っているようなら、それを確認
・4で問題なさそうならアプリを確認
以上です。