Google登录API-获取照片的Uri为空



我使用Google登录API请求用户配置文件,比如用户显示名称、头像照片。我得到了null值GoogleSignInAccount.getPhotoUrl(),得到了值GoogleSignInAccount.getDisplayName().

Gmail帐户可以,但私人帐户不行。私人账户链接到谷歌gmail,它可以在我的gmail账户和谷歌Play商店应用程序中看到图片,谷歌+也是。但为什么我得到空值使用谷歌登录帐户API。

   GoogleSignInOptions.Builder builder = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
                .requestEmail();
        builder.setAccountName(userAcc);
        GoogleSignInOptions gso = builder.build();
mGoogleApiClient = new GoogleApiClient.Builder(this)
            .enableAutoManage(this, 0, this)
            .addApi(Auth.GOOGLE_SIGN_IN_API, gso)
            .build();
        Intent signInIntent = Auth.GoogleSignInApi.getSignInIntent(mGoogleApiClient);
        startActivityForResult(signInIntent, RC_SIGN_IN);

 private void handleSignInResult(final GoogleSignInResult result) {
        if (result.isSuccess()) {
        if (getBaseContext() == null) {
            return;
        }
        GoogleSignInAccount acct = result.getSignInAccount();
        final String email = acct.getEmail();
        final String displayName = acct.getDisplayName();
        final Uri uri = acct.getPhotoUrl();
        String sUri = null;
        if (uri != null) {
            sUri = uri.toString();
        }
        System.out.println("GoogleSignInAccount: getPhotoUrl: " + sUri);

使用https://www.googleapis.com/plus/v1/people/USER_ID?fields=image&key=AIzaSyBz2jGjZl0VGkllxYYKRHPuuAX_oMxdyVQ,返回包含化身的json

最新更新