文档here说明以下
警告:Google+登录按钮和使用的plus.login范围 Google+登录目前不支持与Google+一起使用 域名API。使用Google+向域名API发出的请求 授予的身份验证令牌 https://www.googleapis.com/auth/plus.login范围,或由...生成 Google+登录按钮将失败。
因此,如果我们需要访问Google Plus Domains API,我们如何使用android中的GoogleApiClient对象进行操作? 我想要一个用户圈子的列表,我需要使用Domains API。
答案 0 :(得分:0)
考虑使用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 link完成示例。