Google は、ユーザーが Google アカウントでアプリケーションにサインインできるようにする新しい方法をリリースしました。
http://android-developers.blogspot.de/2016/05/improving-security-and-user-experience.html https://developers.google.com/identity/sign-in/android/start-integrating
新しい API の使用が推奨されているので、使用したいと思います。ただし、一部の手順についてはまだよくわかりません。サインイン ワークフロー自体を実装する方法は明らかです (サンプル アプリケーションは非常に理解しやすいものです)。しかし、バックエンド サービスの API サービス ハンドルを取得するにはどうすればよいですか?
今まで、私はこのように使用していました: まず、このGoogleAccountCredential
ようなものを取得します:
GoogleAccountCredential credential = GoogleAccountCredential.usingAudience(
context, "server:client_id:" + WEB_CLIENT_ID);
credential.setSelectedAccountName("example@gmail.com");
次に、これらの資格情報を、アプリ エンジン エンドポイント用に自動生成された Android クライアント ライブラリに渡しました。
User.Builder b = new User.Builder(AndroidHttp.newCompatibleTransport(),
new AndroidJsonFactory(), CREDENTIALS_FROM_STEP_1).setApplicationName("App");
それだけでした。GoogleAccountCredential
ただし、新しいサインイン ワークフローを使用する場合の取得方法がわかりません。誰かがアイデアを持っていますか?バックエンドも更新する必要がありますか? 前述したように、バックエンドとの OAuth2 通信と承認はすべて、自動生成されたクライアント ライブラリによって行われます。