Amazon Simple Notification Service (Amazon SNS) を使用してプッシュ通知を送信したところ、プラットフォームアプリケーションが無効になりました。
簡単な説明
Amazon SNS は、モバイルデバイスのアプリに直接プッシュ通知メッセージを送信できます。直接または SNS トピックへのサブスクリプションを通じて、モバイルエンドポイントに通知メッセージを送信するプラットフォームアプリケーションを作成できます。これにより、Apple プッシュ通知サービス (APNs) などのアプリケーションのプッシュ通知サービスが、提供された認証情報を使用して SNS に登録されます。SNS はこれらの認証情報を使用してプッシュ通知サービスと通信します。
プッシュ通知サービスは、SNS と通信できない場合に Amazon にフィードバックを返します。プッシュ通知サービスプロバイダーからのフィードバックに基づき、SNS がプラットフォームアプリケーションを無効にする場合があります。
解決策
無効化されたプラットフォームアプリケーションを再有効化する
注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、「AWS CLI のエラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。
次の手順を実行します。
-
プラットフォームアプリケーションが無効化されていることを確認するには、次の get-platform-application-attributes コマンドを実行します。
aws sns get-platform-application-attributes --platform-application-arn arn:aws:sns:us-west-2:123456789012:app/GCM/MyApplication
注: arn arn:aws:sns:us-west-2:123456789012:app/GCM/MyApplication を、アプリケーションの Amazon リソースネーム (ARN) に置き換えてください。
上記のコマンドの出力が Enabled: False の場合、プラットフォームアプリケーションは無効化されています。
-
プラットフォームアプリケーションを有効にするには、次の set-platform-application-attributes コマンドを実行します。
aws sns set-platform-application-attributes --platform-application-arn arn:aws:sns:us-west-2:123456789012:app/GCM/MyApplication --attributes Enabled=true
注: arn arn:aws:sns:us-west-2:123456789012:app/GCM/MyApplication をアプリケーションの ARN に置き換えてください。
プラットフォームアプリケーションの証明書と認証情報を確認する
プラットフォームアプリケーション証明書のステータスが有効であることを確認します。APNS プロダクションアプリケーションに APNS サンドボックス証明書を使用していないことを確認します。プラットフォームアプリケーションの認証情報が取り消し済み、無効、または期限切れになっていないかを確認します。
上記のトラブルシューティング手順で問題が解決しない場合は、AWS サポートにお問い合わせください。必ず 4 つまたは 5 つの SNS プッシュ通知失敗ログを含めてください。SNS プッシュ通知失敗ログを取得するには、「プッシュ通知の Amazon SNS トピック配信ログにアクセスするにはどうすればよいですか?」を参照してください。