開発者コンソール

A3L Messagingサンプルアプリ

A3L Messagingサンプルアプリ

このページでは、A3L Messaging SDKを使用して作成されたサンプルアプリについて説明します。このアプリの目的は、A3L Messagingの統合方法を示すことです。このアプリを実行するにあたり、コードの記述は不要ですが、構成は設定する必要があります。このアプリは、Google Play対応デバイスとFire OSデバイスの両方にインストールできます。このアプリでは、アプリがインストールされているデバイスにプッシュ通知を送信できます。プッシュ通知を送信するには、サーバー側の認証情報が必要となります。

サンプルアプリプロジェクトのダウンロード

まず、A3L Messagingサンプルアプリをダウンロードします。このファイルには、サンプルアプリの構成・ビルドに使用できるAndroidプロジェクトが含まれています。

プロジェクトのビルド時に「SDK location not found」というエラーが発生した場合は、プロジェクトのルートにあるlocal.propertiesファイルに、Android SDKの場所を示す行を追加します。

例:

  • Windowsの場合は、sdk.dir=C:\\Users\\<ユーザー名>\\AppData\\Local\\Android\\sdkという行を追加します。
  • Macの場合は、sdk.dir=/Users/<ユーザー名>/Library/Android/sdkという行を追加します。

<ユーザー名>は実際のユーザー名に置き換えてください。

サンプルアプリの統合

サンプルアプリでは、デバイス側の認証情報とサーバー側の認証情報の両方が必要です。デバイス側の認証情報はアプリ内に存在し、クラウドメッセージングが機能するうえで必要となります。サーバー側の認証情報は、通常はセキュリティで保護されたサーバー環境で使用する必要がありますが、このアプリではデモンストレーションのために、アプリ自体で使用します。ただし、こうするとセキュリティ保護が適用されなくなるため、実際のプロジェクトでは、サーバー側の認証情報はアプリ内で使用しないでください。

サンプルアプリを実行するには、4つの構成ファイルを設定する必要があります。

ファイル名 場所 構成のタイプ メッセージングのタイプ
api_key.txt
取得方法については、デバイス側の構成の手順1を参照してください。
app/src/main/assets/ デバイス側 ADM
adm_server_configuration.json
取得方法については、サーバー側の構成の手順1を参照してください。
app/src/main/assets/ サーバー側 ADM
google-services.json
取得方法については、デバイス側の構成の手順2を参照してください。
app/ デバイス側 FCM
fcm_server_configuration.json
取得方法については、サーバー側の構成の手順2を参照してください。
app/src/main/assets/ サーバー側 FCM

このサンプルアプリの統合ガイドは、デバイス側の構成とサーバー側の構成の2つのパートに分かれています。

デバイス側の構成

まず、Amazon Device Messaging(ADM)とFirebase Cloud Messaging(FCM)の両方について、デバイス側の構成を取得します。

認証情報の生成中に、アプリのパッケージ名の入力が必要となる場合があります。サンプルアプリのパッケージ名は、com.example.SampleA3LMessagingAppです。

  1. ADMの場合は、開発者コンソールにアクセスし、認証情報を取得します。次に、プロジェクトにAPIキーを追加します。開発者コンソール内のアプリの [アプリサービス] セクションでセキュリティプロファイルを関連付けて、アプリのデバイスメッセージングを必ず有効にしてください。

  2. FCMの場合は、Firebaseプロジェクトを作成し、アプリをFirebaseに登録します。次に、google-services.jsonという構成ファイルを取得して、そのファイルをプロジェクトに追加します。

サーバー側の構成

次に、ADMとFCMのサーバー側の構成を取得します。

  1. ADMの場合は、assetsフォルダにあるadm_server_configuration.jsonに、クライアントIDとクライアントシークレットを追加します。ADMサーバー構成のJSONの例は以下のようになります。

     {
         "client_id": "<クライアントID>",
         "client_secret": "<クライアントシークレット>"
     }
    
  2. FCMの場合は、Googleサービスアカウントキーを作成し、手順に従ってキーをJSONファイルとしてダウンロードします。既存のサービスアカウントキーを使用することもできます。ダウンロードしたJSONの内容をコピーして、assetsフォルダにあるfcm_server_configuration.jsonに貼り付けます。FCMサーバー構成のJSONの例は以下のようになります。

     {
         "type": "service_account",
         "project_id": "<プロジェクトID>",
         "private_key_id": "<キーID>",
         "private_key": "-----BEGIN PRIVATE KEY-----\n<プライベートキー>\n-----END PRIVATE KEY-----\n",
         "client_email": "<サービスアカウントのEメール>",
         "client_id": "<クライアントID>",
         "auth_uri": "https://accounts.google.com/o/oauth2/auth",
         "token_uri": "https://accounts.google.com/o/oauth2/token",
         "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
         "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/<サービスアカウントのEメール>"
     }
    

サンプルアプリのテスト

  1. 4つの構成ファイルの設定がすべて完了したら、アプリをビルドします。
  2. Google Playサービスが有効になっているAndroidデバイス、またはFire OSデバイスに、アプリをインストールします。
  3. アプリを開きます。ようこそページが表示され、デバッグ用のプレースホルダーテキストと [SEND PUSH NOTIFICATION] ボタンが表示されます。
  4. [SEND PUSH NOTIFICATION] をクリックします。通知トレイを確認するように促すトーストメッセージが表示されます。また、プレースホルダーテキストが表示されていた位置に、デバイスIDを含むデバッグステートメントも表示されます。
  5. デバイスの通知トレイで、メッセージが正常に配信されたことを確認します。
    サンプルアプリからのプッシュ通知メッセージ
    正常に配信された通知