v2版)このサイトを正しく表示するためには、ブラウザーのJavaScriptの設定を「有効」にしてください。概要このページでは、プッシュ通知の基本的な使い方について説明していきます。v2のドキュメントになります。Messaging(以下、GCM)と連携することで、通知の配信を行っています。Messaging(以下、GCM)を使用しています。終了するため、このページでお伝えしている配信端末を新規登録する方法ができなくなると考えられます。GCM対応のプッシュ通知を使用しているお客様は移行対応とv3のプッシュ通知の基本的な使い方の手順を参考に、FCM対応したプッシュ通知への移行をお願いいたします。ドキュメント内の設定でFirebaseプロジェクトを作成しますが、機能としてはGCMを用いています。Androidアプリでプッシュ通知を受信するまでの設定は以下のような流れとなっています。backendと連携させるためのAPIキーを取得する必要があります。以下のドキュメントを参考に、Firebaseプロジェクトの作成とAPIキーの取得を行ってください。backendでプッシュ通知の設定を行います。プッシュ通知の有効化アプリ設定から、左メニューのプッシュ通知の項目を選択してください。プッシュ通知の許可設定を行う部分があるので、「許可する」に変更して変更を保存してください。Firebaseプロジェクトで取得したAPIキーの追加こちらの内容は現在設定できませんFirebaseプロジェクトで取得したAPIキー(サーバーキー)を設定し、変更を保存してください。backendとFirebaseを連携することができました。ここからは、アプリ側でプッシュ通知を受信するための実装を行っていきます。アプリでの設定アプリ側では、以下のような設定を行います。未実施の場合はクイックスタートをご覧ください。backendで送受信するためには、以下のライブラリが必要です。Manifestの編集AndroidManifest.xmlにて、利用するパーミッションの宣言とレシーバー、サービスの登録を行います。manifestタグの要素として以下のパーミッションの利用を宣言してください。android.permission.VIBRATEが不要な場合は削除しても構いません。パッケージ名は、各自のプロジェクトのものに適宜変更してください。/>次に、applicationタグの要素としてreceiverとserviceの登録を行います。</intent-filter></service>meta-dataの設定v2より以下の項目がAndroidManifestで設定可能となりました。プッシュ通知タップ時に起動するActivityの設定は必須の設定となります。各端末への配信を行っています。IDを取得したあとで、データストアに配信端末情報として登録する必要があります。以下の端末情報の登録処理を、プッシュ通知を受信するアクティビティのonCreateメソッド内に記入してください。ID(送信者ID)を設定します。前回のインストール時に保存された端末情報がデータスト上に残ったままの場合が考えられます。IDの重複エラーが発生するため、エラーが発生したときの処理を実装する必要があります。IDの端末情報を取得して、更新を行っています。再登録は行われず、該当の端末へはプッシュ通知を配信することができなくなってしまいます。アプリがアンインストールされた端末情報(installation)の自動削除機能において、配信依頼時のレスポンスとして返却される「無効なレジスタレーションID」を削除しています。側では削除対象となります。再度登録するには、以下の処理を追加実装する必要があります。});}以上でアプリ側での設定は完了です。アプリをAndroid端末で実行し、端末情報がデータストアに登録されるか確認してください。プッシュ通知をアプリから送信する管理画面だけでなく、アプリからも他の端末へプッシュ通知を送信することができます。deliveryTime未設定の場合は即時配信設定になります。プッシュ通知の設定を行うiOS端末へのプッシュ通知を行う場合は、バッジの増加フラグや、着信音の設定などが可能です。});}Android端末へのプッシュ通知を行う場合は、タイトルや起動画面、ダイアログプッシュ通知の有効フラグを設定できます。});}プッシュ通知のスケジューリングプッシュ通知の配信時刻を指定することができます。Notification");push.setDeliveryTime(date);push.sendInBackground();配信端末の絞り込みsetSearchConditionメソッドでクエリを設定することにより、プッシュ通知を配信する端末を絞り込むことができます。backendに登録する時に任意の値を設定可能ですので、installationクラスの既存フィールド以外でも絞り込み条件を設定することができます。以下はsetChannelsメソッドを使用して、channelsフィールドに絞込み条件として["Ch1"]を設定する例です。});}channelsに"Ch1"が設定されている端末に絞り込んだプッシュ通知は、以下のように配信できます。push.sendInBackground();}管理画面からプッシュ通知を配信するここからは、管理画面からプッシュ通知を配信する方法を説明します。プッシュ通知を送信する管理画面左側メニューのプッシュ通知をクリックし、プッシュ通知の画面を開きます。新しいプッシュ通知ボタンをクリックすると、プッシュ通知作成画面が表示されます。このページで新たなプッシュ通知を作成できます。タイトル、メッセージ、JSONデータを記入してください。※プッシュ通知の設定でメッセージとタイトルを入力しなかった場合は、端末にプッシュ通知が表示されません。(上記の場合でも、ダイアログ表示やJSONデータの取得は可能です。)※iOS宛プッシュ通知の設定は、iOS8未満は合計256バイトまで、iOS8以降は合計2Kバイトまでがサポート対象となります。配信日時の指定を行います。以下の例では、作成されたプッシュ通知が即時に配信される設定になっています。プッシュ通知送信日時を指定する場合は、配信日時の欄で日時を選択し、希望する日時を指定してください。配信期限の指定では電源が切れているなどの事情により通知を受け取れなかった端末への再送信期間を設定できます。デフォルトの設定では再送信できる期間が10日間となっていますが1~28日間、1~24時間の間で、期間を指定できます。配信期限を日時で指定する場合は、日時の指定画面が表示されます。次に、配信を行うプラットフォームを選択してください。AndroidとiOSの両方にプッシュ通知を送信することも可能です。Androidを選択した場合は、以下のようにアクション設定と、ダイアログ表示の設定画面が表示されます。iOSを選択した場合は、以下のようなiOS端末へのプッシュ通知を行うための設定画面が開きます。最後に「プッシュ通知を作成する」ボタンをクリックすると、プッシュ通知が作成されます。テンプレートを使用するプッシュ通知作成画面上部にあるテンプレート機能では、プッシュ通知作成時に入力・設定した内容を保存しておくことができます。毎回同一内容のプッシュ通知を作成している場合、テンプレート機能を使用することで、プッシュ作成時の手間を省くことができます。タイトルやメッセージを入力した後、「テンプレートとして保存する」ボタンをクリックしてください。すると、以下のようなポップアップが表示されます。テンプレート名を入力し、「保存する」ボタンをクリックすると、テンプレートとして保存されます。保存されたテンプレートはプルダウンから選択可能です。パーミッションの内容は、テンプレートとして保存されません。配信エラーとなった場合プッシュ通知一覧の画面で、配信状況が配信エラーになる場合がございます。エラーが発生する場合の主な理由と対策は、以下の通りです。配信対象はデフォルトでiOS/Androidの両方なので、iOSプッシュ通知証明書とAPIキーのどちらかを設定していないとエラーになります。iOSプッシュ通知証明書に不具合があったり、有効期限が切れていた場合も、エラーとなります。iOSプッシュ通知証明書の有効期限切れについては、こちらもご参考ください。※配信エラーでは無いにも関わらずプッシュ通知が届かない場合は、省電力モードの設定が影響している場合がございます。端末の設定をご確認ください。プッシュ通知でJSONデータを取得するプッシュ通知にはJSON形式で任意のデータを含めることができるので、プッシュ通知を受信した時に、そのデータを受け取って処理を行うことができます。カスタムサービスを用意SDKが用意しているNCMBGcmListenerServiceを継承して、カスタムサービスを作成してください。AndroidManifest.xmlのサービスを定義している部分を書き換えてください。</intent-filter></service>JSONデータの取得を実装CustomGcmListenerServiceクラスでonMessageReceivedメソッドをオーバーライドして、プッシュ通知に含まれているJSONデータを取得します。ペイロードからJSONデータを取得する場合は、com.nifty.DataキーからJSONオブジェクトを作成してください。data);}ペイロードの内容についてAndroid端末へのプッシュ通知では、以下のペイロードが受信されます。文字列JSONデータのパラメータに使用可能な文字の制限JSONデータのパラメータには、以下の文字が使用できません。Expertプラン以上のお客様はテクニカルサポートにてご質問を承らせて頂きます。TOPSNSFacebookTwitterQiitaGitHub富士通クラウドテクノロジーズホームへ特定商取引法に基づく表示ウェブサイトの利用について個人情報保護ポリシーについて。