アプリを使用するユーザーを認証するためにGoogle サインイン サービスを使用しています。メール情報をリクエストしたところ、機能しました
GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestEmail().build();
次に、バックエンドで認証できるようにするには、ID トークンも要求する必要があることがわかりました。
GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestIdToken(String.valueOf(R.string.server_client_id))
.requestEmail().build();
問題は、変更後にログインできないことです。ログインしようとするたびに得られるステータスは ですStatus{statusCode=unknown status code: 12501, resolution=null}
。
私は周りを検索してきましたが、ほとんど同じことについてこの投稿を見つけました。
ただし、回答者が挙げた間違いはありません。開発コンソールのoAuthクライアントIDはWebアプリケーション用です
R.string.server_client_id
。写真の最初のクライアントIDです。もちろん、パッケージ名はすべて正しく配置されています。そうでない場合は、トークン リクエストがなければ機能しません。2 人も、これを機能させるにはアプリに署名する必要があると提案しましたが、Google のドキュメントによると、デバッグ キーも機能するはずであり、デバッグのためにアプリに署名させるのは意味がありません。
私はこれを何時間も理解しようとしてきましたが、成功していません。何が問題なのですか?ここに書き忘れたかもしれない詳細情報をお気軽にリクエストしてください。