Android デバイスにプッシュ通知を送信するためのプラットフォームアプリケーションを Amazon Simple Notification Service (Amazon SNS) で作成したいと考えています。
簡単な説明
Android デバイスにプッシュ通知を送信するためのプラットフォームアプリケーションを Amazon SNS で作成するには、次のいずれかを実行します。
解決策
注: Amazon SNS プッシュ通知は、すべての AWS リージョンで利用できるわけではありません。詳細については、「Supported Regions for mobile applications」を参照してください。
前提条件
Firebase プロジェクトと、Firebase に登録された有効な Android アプリが必要です。手順については、 Firebase ドキュメントの「ステップ 1: Firebase プロジェクトを作成してアプリを登録する」を参照してください。
また、有効な FCM プロジェクト API キー (サーバーキー) を含む、Firebase Cloud Messaging (FCM) からの有効な認証情報も必要です。詳細については、Firebase ドキュメントの「Firebase Cloud Messaging」を参照してください。
注: Amazon SNS は現在 FCM API (v1) をサポートしていません。サーバーキーにアクセスするには、FCM API (レガシー) を使用してください。
FCM プロジェクトの API キー (サーバーキー) を取得する方法
1. Firebase コンソールで、自分のプロジェクトを選択します。
2. 左側のナビゲーションペインで、歯車のアイコンを選択します。次に、[プロジェクト設定] を選択します。
3. [Cloud Messaging] タブを選択します。
4. [プロジェクト認証情報] で、[サーバーキー] を探します。このトークンは FCM プロジェクトの API キーです。クリップボードにコピーします。
Amazon SNS コンソールで Android プラットフォームアプリケーションを作成する
1. Amazon SNS コンソールを開きます。
2. 左側のナビゲーションペインで、[モバイル] を選択します。次に、[プッシュ通知] を選択します。
3. [モバイルプッシュ通知] ページの [プラットフォームアプリケーション] の横にある [プラットフォームアプリケーションの作成] を選択します。
4. [プラットフォームアプリケーションの作成] ページの [詳細] で、次のように操作します。
[アプリケーション名] に、アプリケーションの名前を入力します。
[プッシュ通知プラットフォーム] には、[Firebase Cloud Messaging (FCM)] を選択します。
[Firebase Cloud Messaging の認証情報] の [API キー] に、FCM プロジェクトの API キー (サーバーキー) を入力します。
5. (ベストプラクティス) イベント通知と配信ステータスのログ記録をセットアップします。
6. [プラットフォームアプリケーションの作成] を選択します。
AWS CLI コマンドの create-platform-application を実行して Android プラットフォームアプリケーションを作成する
注: AWS CLI コマンドの実行中にエラーが発生した場合は、使用しているのが AWS CLI の最新バージョンであることを確認してください。
1. 以下のコードをコピーしてテキストエディタに貼り付けます。次に、それを FCMAPIKey.json という名前の JSON ファイルとして保存します。
重要: Your_FCM_API_Key を、自分の FCM API キー (サーバーキー) に置き換えます。
{
"PlatformCredential": "Your_FCM_API_Key"
}
2. 次の create-platform-application AWS CLI コマンドを実行します。
重要: Your_Application_Name は該当するアプリケーションの名前で置き換えます。必ず FCMAPIKey.json ファイルと同じディレクトリで、コマンドを実行してください。
aws sns create-platform-application --name Your_Application_Name --platform GCM --attributes file://FCMAPIKey.json
プラットフォームアプリケーションの Amazon リソースネーム (ARN) がコマンド出力に表示されます。
create-platform-application コマンドの出力例
{
"PlatformApplicationArn": "arn:aws:sns:us-east-1:XXXXXXXXXXXX:app/GCM/Your_Application_Name"
}
3. (ベストプラクティス) イベント通知と配信ステータスのログ記録をセットアップします。
注: Android プラットフォームアプリケーションでプッシュ通知を送信するには、「Mobile push notifications」の手順に従ってください。
詳細については、Amazon SNS API Reference の「CreatePlatformApplication」を参照してください。
関連情報
AWS CLI を使用して Amazon SNS でプッシュ通知を送信するための APN プラットフォームアプリケーションを作成するにはどうすればいいですか?
Adding device tokens or registration IDs
Publishing to a mobile device
Publishing to a topic
プラットフォームのレスポンスコード