如何使用GoogleApiClient对象访问Google plus domains api



这里的文档说:

警告:Google+ 登录按钮和 使用的 plus.login 范围 Google+ 登录,目前不支持与 Google+ 一起使用 域 API。使用 Google+ Domains API 发出的请求 为 https://www.googleapis.com/auth/plus.login 范围,或由 Google+ 登录按钮将失败。

因此,如果我们需要访问Google Plus Domains API,我们如何在Android中使用GoogleApiClient对象来做到这一点?我想要一个需要使用域 API 的用户圈子列表。

考虑使用 GoogleAuthUtil 进行 Google Plus Domain 身份验证。

最重要的是:"域API仅适用于域电子邮件ID"(不是gmail ID)。

String scopes = "oauth2:" + "https://www.googleapis.com/auth/plus.me " +
            "https://www.googleapis.com/auth/plus.circles.read";  
String accountName = "domain_email_id_used_for_login";//fetch from AccountManager or ask the user to enter
String token = "";
try {
        SharedPreferences sharedPref = PreferenceManager.getDefaultSharedPreferences(LoginActivity.this);
        token = sharedPref.getString("token", "");
        if (!token.equals("")) {
            GoogleAuthUtil.clearToken(LoginActivity.this, token);
        }
        token = GoogleAuthUtil.getToken(LoginActivity.this,
                        accountName, scopes);
        GoogleCredential googleCredential = new GoogleCredential().setAccessToken(token);
        PlusDomains plusDomains = new PlusDomains.Builder(new NetHttpTransport(), new JacksonFactory(), googleCredential).setApplicationName("GPlusLab").build();
        plusDomains.people().get("me").execute();
                return token;
    } catch (UserRecoverableAuthException e) {
                startActivityForResult(e.getIntent(), REQUEST_AUTHORIZATION);
    } catch (GoogleAuthException e) {
                e.printStackTrace();
    } catch (IOException e) {
                e.printStackTrace();
    }

GitHub 链接到完整的示例。

相关内容

  • 没有找到相关文章

最新更新