AndroidおよびFireアプリのユーザーエクスペリエンス
このセクションでは、ユーザーがAndroidアプリでLogin with Amazonを使用する場合のログインフローについて説明します。Android用のLogin with Amazon SDKを使用すると、最初のサインインからユーザーの同意の取得、プロファイル情報の共有(リクエストした場合)、最後にユーザーをAndroidアプリに戻すまでの一連のログインフローに対応できます。
手順1: [Login with Amazon] ボタン
ユーザーがAndroidアプリで [Login with Amazon] ボタンをクリックすると、ログインフローが開始します。アプリのサインイン画面と登録画面には、Login with Amazonブランドのボタンを配置することをお勧めします。ユーザーがAmazon認証情報を使用してすぐにアプリにログインできるように、アプリのヘッダーやフッターに [Login with Amazon] ボタンを配置することもできます。
[Login with Amazon] ボタンを実装する手順については、Androidでの使用開始手順を参照してください。
手順2: ログインフロー
Android用のLogin with Amazon SDKは、各ユーザーの環境に応じて次のいずれかのログインフローを自動的に提示します。
- シングルサインオン(SSO)フロー:ユーザーがAndroidデバイスでAmazonモバイルショッピングアプリにサインインしている場合、またはFire OSを実行するAmazonブランドのデバイスを使用している場合。
- システムブラウザフロー:ユーザーがAndroidデバイスでAmazonモバイルショッピングアプリにサインインしておらず、Fire OSを実行するAmazon製のデバイスも使用していない場合。
シングルサインオンフロー
AndroidデバイスでAmazonモバイルショッピングアプリに既にサインインしている状態で、ユーザーが [Login with Amazon] ボタンをクリックすると、Amazonアカウント認証情報の入力画面は表示されません。代わりに、Android用のLogin with Amazon SDKがAmazonモバイルショッピングアプリやAmazonデバイスのユーザー認証を認識し、そのアカウント情報を使用してユーザーがAndroidアプリにログインできるようにします。ユーザーは、プロファイル情報をアプリと共有することに1回同意するだけで済みます(アプリがリクエストした場合)。
SSOフローでは、まずユーザーがAndroidアプリにアクセスします(A)。[Login with Amazon] ボタンをクリックすると(B)、ユーザーはAmazonモバイルショッピングアプリ内の安全なAmazonブランドのWebViewにリダイレクトされ、プロファイルデータにアプリがアクセスすることへの同意を求められます(C)。同意済みの場合や、同意が必要なスコープをアプリがリクエストしていない場合は、この手順はスキップされます。その後、ユーザーは同意画面からアプリにリダイレクトされます(D)。
システムブラウザフロー
ユーザーがAndroidデバイスでAmazonモバイルショッピングアプリにサインインしていない場合、Login with Amazonはユーザーをシステムブラウザにリダイレクトし、安全なAmazonブランドの画面を表示します。ここでAmazonアカウント認証情報を入力すると、ユーザーは目的のアプリにログインできます。サインイン後、ユーザーはプロファイル情報をアプリと共有するたびに1度だけ同意する必要があります(アプリがリクエストした場合)。
システムブラウザフローでは、まずユーザーがAndroidアプリにアクセスします(A)。[Login with Amazon] ボタンをクリックすると(B)、ユーザーはアプリから離れ、システムブラウザの安全なAmazonブランドのログイン画面にリダイレクトされます(C)。Amazonアカウント認証情報を入力すると、別の安全なAmazonブランドのページがシステムブラウザで開き、ユーザーはプロファイルデータにアプリがアクセスすることへの同意を求められます(D)。同意済みの場合や、同意が必要なスコープをアプリがリクエストしていない場合は、この手順はスキップされます。その後、ユーザーはブラウザウィンドウからアプリにリダイレクトされます(D)。
手順3: ログイン画面
システムブラウザフローでは、Amazonユーザーが [Login with Amazon] ボタンをクリックするとすぐにログイン画面が表示されます。
Amazonブランドのログイン画面の構成は、次のようになります。
- 開発者がLogin with Amazonに登録するときに選択したアプリ名。
- [パスワードをお忘れですか?] リンク。クリックすると、ユーザーはAmazon.comのパスワードをリセットできます。
- ユーザーがAmazon.comアカウント認証情報を入力するフィールド。
- [パスワードを表示] チェックボックス。これをオンにすると、入力するパスワードを表示できます。デフォルトでオン(パスワードが表示される設定)になっています。
- [ログインしたままにする] チェックボックス。これをオンにすると、次回Login with Amazonを使用してアプリにアクセスするときにログイン画面と同意画面をスキップできます。代わりに、次回アプリにログインするときには確認画面(上記参照)が表示され、[次へ進む] をクリックするとAmazonアカウント認証情報でアプリにログインできます。
- 安全な [ログイン] ボタン。アカウント認証情報を使用してAmazonに認証する準備ができている場合にクリックします。[ログイン] をクリックすると、上記のログインフローセクションで説明したように、ユーザーは同意画面またはアプリにリダイレクトされます。
- [アカウントを作成] ボタン。ここをクリックすると、新規アカウントを作成して、アプリにサインインできます。
- [詳細はこちら] リンク。Login with Amazonを使用するメリットや、そのほかの詳細を確認できます。
- Login with Amazonの使用に関連する [利用規約] と [プライバシー規約] へのリンク。
手順4: 同意画面
アプリがユーザープロファイル情報(ユーザーの名前、Eメールアドレス、郵便番号など)へのアクセスをリクエストした場合、同意画面を通じてユーザーに通知されます。
Amazonブランドの同意画面の構成は、次のようになります。
- ユーザーの名前を表示するドロップダウンリスト(右上)。ドロップダウンの矢印をクリックすると、認証の際に別のAmazonアカウントを選択することができます。
注意: このリンクはSSOフローでは表示されません。SSOフローでは常に、デバイスまたはAmazonモバイルショッピングアプリで認証済みのAmazonアカウントが自動的に適用されます。
- 開発者がLogin with Amazonに登録するときに設定したアプリ名とロゴ。
- アプリにリクエストされた各パーミッションの一覧。
- [同意する] ボタン。ユーザーが情報の共有に同意する場合にクリックします。[同意する] をクリックすると、上記のログインフローセクションで説明したように、ユーザーはアプリにリダイレクトされます。
注意: 同意が必要なのは、アプリごと、デバイスごとに1回のみです。一度Androidアプリとの情報共有に同意したら、[お客様のアカウント] リンクから意図的にパーミッションを削除しない限り、同意を再度求められることはありません。
- [キャンセル] ボタン。ユーザーが情報の共有に同意しない場合にクリックします。[キャンセル] をクリックすると、ユーザーは認証されていない状態でアプリに戻されます。
- [お客様のアカウント] リンク。クリックすると、ユーザーはLogin with Amazonを介してアプリに付与したパーミッションを削除できます。
- 開発者がLogin with Amazonに登録するときに設定したアプリのプライバシーポリシーへのリンク。
手順5: 成功
ログインフローが完了すると、ユーザーは自動的にAndroidアプリにリダイレクトされます。