2

GCMと組み合わせてAmazon SNS Mobile Push Notificationsと組み合わせて、Androidデバイスに通知を送信します。私は私のアプリを起動して実行にGCMを持ってモバイル/ AndroidエンドポイントをAmazon SNSモバイルプッシュサービスに登録

は、それがGoogleからの登録IDを受信して​​、https://android.googleapis.com/gcm/send

  • を介してデバイスへのI

    • 送信通知を手動にデバイスの登録IDを追加した場合に通知を受け取ることができます私のAWS/SNSプロジェクトのモバイルエンドポイント

    次のステップは、デバイスがSNSサービスのエンドポイントとして登録されることです。このため 、documentationが示唆:

    を 将来的にアプリをインストールするデバイスからのトークンを登録するには

    次の2つのオプションのいずれかを使用することができます。

    は、Amazonを使用Cognitoサービス:Amazon SNSプラットフォーム アプリケーションに関連付けられたエンドポイントを作成するには、モバイルアプリで資格情報 が必要です。一時的な資格情報を使用することをお勧めします 一定期間後に期限が切れます。ほとんどの場合、 Amazon Cognitoを使用して一時的なセキュリティ資格情報を作成することをお勧めします。 詳細については、IDプロバイダを使用するモバイルアプリケーション の一時的なセキュリティ資格の作成を参照してください。アプリがAmazon SNSに登録されたときに を通知する場合は、 Amazon SNSイベントを受信して​​新しいエンドポイントARNを提供するように登録できます。 ListEndpointByPlatformApplication APIを使用して、Amazon SNSに登録されたエンドポイントの完全リスト を取得することもできます。

    は、プロキシサーバーを使用する:あなたの アプリケーションインフラストラクチャがすでに コールにモバイルアプリ用に設定し、それぞれのインストールに登録されている場合は、あなたが この設定を使用し続けることができます。サーバーはプロキシとして機能し、デバイストークン をAmazon SNSモバイルプッシュ通知に、 に保存するユーザーデータを渡します。この目的のために、プロキシサーバーはAWS資格情報を使用して をAmazon SNSに接続し、 CreatePlatformEndpoint API呼び出しを使用してトークン情報をアップロードします。新しく作成されたエンドポイントAmazonリソース名(ARN) が返されます。 Amazon SNSへの公開呼び出しを行うためにサーバが格納できる です。

    は、私がモバイルエンドポイント(About Web Identity Federation)を作成するためにSNSを直接デバイス・レジスタをプロキシサーバーを使用しますが、聞かせたくないを考えると、以下の仮説が正しいのですか?

    私は、このAWSアカウントへのアクセスのための認証情報をアプリケーションに直接格納する必要があります(もちろんオプションではありません)。あるいは、ユーザーはいくつかのOpenIDアカウントで自分自身を識別する必要がありますユーザーがプッシュメッセージを受信するだけで自分自身を識別しないため)。

  • 答えて

    2

    アスコルビン - はい、Cognito Federated Identityを使用します。 Cognito Identityを使用すると、一時的に制限されたAWS認証情報を作成して、アプリユーザーがSNSプラットフォームエンドポイントを作成したり、ログインすることなくSNSトピックに登録できるようになります。最初にcreate a Cognito Identity PoolとCognitoがアプリケーションエンドユーザーに2つのロール(Auth & UnAuth) 。

    Unauthenticated IAMロール内では、ユースケースに応じてsns:CreatePlatformEndpointまたはsns:Subscribeに権限を与えることができます。 AWS Consoleでアイデンティティプールを作成すると、AndroidアプリでAmazon Cognito認証情報プロバイダを実装するためのAndroid用の「サンプルコード」が表示されます。注:アイデンティティプールを作成する際には、「認証されていないアイデンティティへのアクセスを有効にする」を選択して、認証されていないIAMロールが作成され、ログインすることなくすべてのアプリケーションユーザがAWSリソースにアクセスできなくすることができます。

    動作中のサンプルAndroidアプリを確認するには、AWS Mobile Hubをチェックアウトし、プロジェクトを作成し、Cognito Identityを使用してAWSリソースにアクセスするAndroidサンプルアプリケーションをダウンロード/実行します。

    関連する問題