要实现安卓谷歌登录,以下是一个简单的代码示例:
build.gradle 文件中添加依赖项:implementation 'com.google.android.gms:play-services-auth:19.2.0'
AndroidManifest.xml 文件中添加权限:
GoogleSignInClient 对象:private GoogleSignInClient mGoogleSignInClient;
private void createGoogleSignInClient() {
GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestEmail()
.build();
mGoogleSignInClient = GoogleSignIn.getClient(this, gso);
}
private static final int RC_SIGN_IN = 1001;
private void signInWithGoogle() {
Intent signInIntent = mGoogleSignInClient.getSignInIntent();
startActivityForResult(signInIntent, RC_SIGN_IN);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == RC_SIGN_IN) {
Task task = GoogleSignIn.getSignedInAccountFromIntent(data);
try {
GoogleSignInAccount account = task.getResult(ApiException.class);
// 登录成功,可以获取用户信息
String displayName = account.getDisplayName();
String email = account.getEmail();
// 其他操作...
} catch (ApiException e) {
// 登录失败
Log.e(TAG, "signInResult:failed code=" + e.getStatusCode());
}
}
}
这样,你就可以实现安卓谷歌登录了。当用户点击登录按钮时,会启动谷歌登录流程,用户选择账号后,会返回登录结果,你可以在 onActivityResult 方法中处理登录结果,获取用户信息并执行其他操作。