Google+登录 - 自定义登录按钮后,handleSignInResult返回false

Lak*_*Lak 4 android google-authentication google-plus-signin

我正在按照Google提供的示例代码将Google plus与android集成. https://github.com/googlesamples/google-services/blob/master/android/signin/app/src/main/java/com/google/samples/quickstart/signin/SignInActivity.java

该代码示例完全正常,直到我添加了一些更改,如下所示.

GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
 .requestScopes(new Scope(Scopes.PLUS_LOGIN))
 .requestEmail()
 .build();

mGoogleApiClient = new GoogleApiClient.Builder(this)
 .enableAutoManage(this /* FragmentActivity */, this /* OnConnectionFailedListener */)
 .addApi(Auth.GOOGLE_SIGN_IN_API, gso)
 .build();

signinGoogleBtn = (SignInButton) findViewById(R.id.signingoogleBtn);
signinGoogleBtn.setSize(SignInButton.SIZE_STANDARD);
signinGoogleBtn.setScopes(gso.getScopeArray());
Run Code Online (Sandbox Code Playgroud)

我将Google+范围添加到GoogleSignInOptions以自定义登录按钮.然后GoogleSignInResult和handleSignInResult总是返回false.

if (requestCode == RC_SIGN_IN) {
        GoogleSignInResult result = Auth.GoogleSignInApi.getSignInResultFromIntent(data);
        handleSignInResult(result);
Run Code Online (Sandbox Code Playgroud)

有人可以帮我解决这个问题吗?

Sud*_*aur 14

嘿我有同样的问题,我认为在你的情况下要么你没有把你的google-services.json文件放在你的应用程序文件夹中,或者你没有运行你签名的apk文件如果这个案例首先签署你的apk然后粘贴这个apk文件在你的手机和他们打开它,我的意思是不要从Android工作室运行你的应用程序,因为它的作用是它不会在移动设备上运行签名的apk文件.希望这工作:)

  • 这应该标记为答案.生成已签名的APK并将其放入我手机的下载文件夹中,然后使用文件管理器找到并安装适用于我的APK.谢谢. (2认同)