Android Google登录

问题描述 投票:0回答:1

我需要启用对Google云端硬盘的服务器端访问权限。在这种情况下,一个人正在使用他的Android设备。据我所知,步骤如下:1。创建GoogleSignInOptions 2.使用GoogleSignInOptions创建GoogleSignInAccount 3.从GoogleSignInAccount获取authCode 4.交换authCode以获取访问/刷新/ ID令牌

我坚持第3步。我遵循了很好的教程而没有任何成功 - https://developers.google.com/identity/sign-in/android/offline-accesshttps://developers.google.com/identity/sign-in/android/sign-in#configure_google_sign-in_and_the_googleapiclient_object

以下是初始化登录过程的代码:

final GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
                .requestScopes(new Scope(Scopes.DRIVE_APPFOLDER))
                .requestServerAuthCode(backend_server_web_client_id)
                .build();

GoogleSignInClient google_api_client = GoogleSignIn.getClient(context, gso);

activity.startActivityForResult(google_api_client.getSignInIntent(), RC_SIGN_IN);

以下是处理登录结果的代码:

// data is the intent from onActivityResult callback
Task<GoogleSignInAccount> task = GoogleSignIn.getSignedInAccountFromIntent(data);

if (task.isComplete())
    handle(task);
else {
    task.addOnCompleteListener(new OnCompleteListener<GoogleSignInAccount>() {
            @Override
            public void onComplete(@NonNull Task<GoogleSignInAccount> task) {
                handle(task);
            }}
    });
}

最后这里是句柄功能,问题在哪里:

public void handle(Task<GoogleSignInAccount> task) {
    try {
        GoogleSignInAccount account = task.getResult(ApiException.class);
    } catch (ApiException e) {
    //I'm always getting this exception with status code 10, which means DEVELOPER ERROR. Keys in Google API console are checked multiple times.
    }
}

在句柄函数中,我总是得到一个状态代码为10的异常,这意味着DEVELOPER_ERROR。多次检查Google API控制台中的密钥。代码被重写了几次......我真的不知道出了什么问题。

谢谢 :)

google-signin google-drive-android-api googlesigninapi googlesigninaccount
1个回答
1
投票

您可能忘记配置Google API控制台。按照说明:https://developers.google.com/identity/sign-in/android/start-integrating

您会看到为Android创建OAuth客户端ID以及相应的包名称和签名证书的SHA1。您无需在代码中的任何位置输入此密钥。它只需存在于Google API控制台中。

© www.soinside.com 2019 - 2024. All rights reserved.