如何在 Amazon SNS 中创建用于推送通知的 Android 平台应用程序?
上次更新日期:2022 年 2 月 23 日
我想在 Amazon Simple Notification Service(Amazon SNS)中创建一个平台应用程序,以将推送通知发送到 Android 设备。该如何设置?
简短描述
要在 Amazon SNS 中创建一个平台应用程序,以便向 Android 设备发送推送通知,您可以执行以下任意操作:
- 使用 Amazon SNS 控制台创建 Android 平台应用程序。
- 运行 create-platform-application AWS Command Line Interface (AWS CLI) 命令以创建 Android 平台应用程序。
解决方法
注意:Amazon SNS 推送通知并非在所有 AWS 区域都可用。有关更多信息,请参阅移动应用程序支持的区域。
先决条件
您必须拥有 Firebase 项目并以及通过 Firebase 注册的有效 Android 应用程序。有关说明,请参阅 Firebase 文档中的步骤 1:创建 Firebase 项目并注册应用程序。
此外,您还必须拥有来自 Firebase Cloud Messaging (FCM) 的有效凭证,包括有效的 FCM 项目 API 密钥(服务器密钥)。有关更多信息,请参阅 Firebase 文档中的 Firebase Cloud Messaging。
检索 FCM 项目的 API 密钥(服务器密钥)
1. 在 Firebase 控制台中,选择您的项目。
2. 在左侧导航窗格中,选择齿轮图标。然后选择 Project settings(项目设置)。
3. 选择 Cloud Messaging(云消息收发)选项卡。
4. 在 Project credentials(项目凭证)中,找到 Server key(服务器密钥)。此令牌是您的 FCM 项目的 API 密钥。将它复制到您的剪贴板。
使用 Amazon SNS 控制台创建 Android 平台应用程序
1. 打开 Amazon SNS 控制台。
2. 从左侧导航窗格中选择 Mobile(移动)。然后选择 Push notifications(推送通知)。
3. 在 Mobile push notifications(移动推送通知页面)上的 Platform applications(平台应用程序)旁,选择 Create platform application(创建平台应用程序)。
4. 在 Create platform application(创建平台应用程序)页面上的 Details(详细信息)下,执行以下操作:
对于 Application name(应用程序名称),输入您的应用程序的名称。
对于 Push notification platform(推送通知平台),选择 Firebase Cloud Messaging(FCM)。
在 Firebase Cloud Messaging Credentials(Firebase Cloud Messaging 凭证)下的 API key(API 密钥)中,输入 FCM 项目的 API 密钥(服务器密钥)。
6. 选择 Create platform application(创建平台应用程序)。
要运行 create-platform-application AWS CLI 命令以创建 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 Resource Name (ARN) 将显示在命令输出中。
create-platform-application 命令输出示例
{
"PlatformApplicationArn": "arn:aws:sns:us-east-1:XXXXXXXXXXXX:app/GCM/Your_Application_Name"
}
注意:要使用 Android 平台应用程序发送推送通知,请按照移动推送通知中的说明进行操作。
有关更多信息,请参阅 Amazon SNS API 参考中的 CreatePlatformApplication。