以下のようなスキームを考えたのですが、このような実装をされている方がいらっしゃればコメントいただけると助かります。
- ユーザーは自分の電話番号を提供します。クライアントは、HTTPS 要求を介してこの番号を一緒に送信します。
- サーバーはランダムなコードを生成し、ユーザーの電話番号と期限とともに DB に保存します。このランダム コードを含む電話番号に SMS が送信されます。
- ユーザーは SMS を受信し、Android クライアントにコードを提供します。Android クライアントは、HTTPS 経由でコードをサーバーに再度送信します。
- サーバーはコードを受信し、それが同じで期限内であれば、HTTPS 応答に含まれるユーザーのトークンを生成します。
- クライアントはこのトークンを SharedPreferences に保存し、サーバーと通信するたびに送信します。