【发布时间】:2016-10-08 07:40:52
【问题描述】:
在尝试使用用户的 google 帐户获取联系人时,我在使用人员 API 后遇到了一些问题。它仅返回所有列出的电子邮件地址中的少数电子邮件地址。访问令牌和所有范围都已正确设置。 以下代码:
People peopleService = new People.Builder(httpTransport, jsonFactory, credential)
.build();
ListConnectionsResponse response = peopleService.people().connections().list("people/me")
.setPageSize(500).setSortOrder("FIRST_NAME_ASCENDING")
.setAccessToken(tokenResponse.getAccessToken())
.setAlt("json")
.setRequestMaskIncludeField("person.names,person.emailAddresses,person.phoneNumbers")
. execute();
connections = response.getConnections();
如果我使用谷歌的联系人 API 而不是这个,那么我得到的电子邮件地址比人多。联系人 API 的代码:
URL feedUrl = new URL("https://www.google.com/m8/feeds/contacts/default/full");
ContactFeed resultFeed = myService.getFeed(feedUrl, ContactFeed.class);
// Print the results
System.out.println(resultFeed.getTitle().getPlainText());
for (ContactEntry entry : resultFeed.getEntries()) {
....
.....
.......
}
我想知道它们两者之间是否有任何区别,以及我必须使用哪一个以获得更好的结果,或者我是否遗漏了什么。请建议。谢谢..!!
【问题讨论】:
-
签出people.googleapis.com/$discovery/rest?version=v1 为您提供支持的架构和方法。
标签: android android-contacts google-contacts-api google-people-api