SMS User Consent API は SMS Retriever API を補完するもので、1 つの SMS メッセージの内容へのアクセスを許可するようアプリがユーザーに要求できるようにしています。ユーザーが同意すると、アプリはメッセージ本文全体にアクセスして、SMS 検証を自動的に完了します。
SMS User Consent API のユーザーフロー
SMS User Consent API を使用してワンタイム コードを自動的に入力する場合、ユーザーは 1 つの SMS メッセージの読み取り権限をアプリに付与するよう求められます。SMS User Consent API を使用すると、ユーザーに次の画面が表示されます。
ユーザーが SMS 検証フローを開始すると、キーボードを使用してワンタイム コードを入力するよう求められます。これは、アプリが実行されているデバイスとは別のデバイスでユーザーが SMS を受信した場合に対応するために重要です。
その後、アプリが SMS ユーザーの同意をリクエストした場合は、1 回限りのコードを含む着信 SMS メッセージがユーザーに表示され、単一の SMS メッセージの内容全体を共有するオプションが表示されます。これは、アプリが SMS User Consent をリクエストし、SMS メッセージを受信したデバイスで実行されている場合にのみ発生します。
ユーザーがアプリに SMS メッセージの内容を提供することを選択した場合、SMS メッセージのテキスト全体が共有されます。SMS 検証フローが自動的に完了することが表示されます。
ユーザーが共有しないことを選択した場合、ユーザーはワンタイム コードを手動で入力して SMS 検証フローを完了します。
SMS User Consent API のデベロッパー フロー
SMS User Consent API を使用して完全な SMS 確認フローを実装するには、SMS を送信するバックエンド サーバーと SMS User Consent API の両方を操作して、ワンタイム コードを含む 1 つのメッセージへのアクセスをユーザーに求める必要があります。
SMS User Consent API を使用して SMS 検証フローを実装するには、アプリとサーバーで次の手順が必要になります。
- アプリが SMS User Consent API を呼び出し、サーバーからの SMS レスポンスのリッスンを開始します。SMS ユーザーの同意を開始する前に受信した SMS メッセージはアプリに転送されません。
- SMS User Consent API を起動すると、SMS 検証を使用してユーザーの電話番号を確認するよう、アプリがサーバーにリクエストします。
- ユーザーのデバイスがワンタイム コードを含む SMS メッセージを受信すると、Google Play 開発者サービスはメッセージの内容をユーザーに表示し、そのテキストをアプリで利用できることへの同意を求めます。
- ユーザーが同意すると、SMS メッセージの全文がアプリで利用できるようになります。
- アプリはメッセージ テキストからワンタイム コードを解析し、サーバーに送信します。
詳しくは、SMS 確認コードを読み取るための 1 回限りの同意をリクエストするをご覧ください。