经过大量的研究和测试后,我最终使用下面的库访问谷歌联系人,因为我需要创建联系人:
<dependency>
<groupId>com.google.gdata</groupId>
<artifactId>core</artifactId>
<version>1.47.1</version>
</dependency>
使用Two Legged OAuth2和Google Playground的连接工作正常(我只需要创建一个刷新访问令牌的实用类),并且我已经成功列出了contats。
我必须说,我不能完全理解我从联系人列表中获得的结果与我访问google测试帐户的联系人选项时实际看到的结果相比,但这是另一天的问题。
我需要快速解决的问题是创建联系人。
我已使用以下链接中的代码:
虽然代码表现完全正常(没有例外,我收到新的联系人ID并在日志上打印),但我无法在Google帐户上看到这个新联系人,并使用该商家信息将其取回联系api。
你们可以帮帮我吗?
谢谢和最诚挚的问候, 莫罗。
答案 0 :(得分:1)
我昨天注意到,尽管创建的联系人没有出现在&#34; Google通讯录&#34;网络管理工具(下面的链接),确实创建并存储在某个地方。
我注意到,当我试图搜索它时。
然后,该联系人显示为已过滤的项目,当我点击它时,会显示一个联系人窗口,其中包含所有信息以创建它。
我开始怀疑它可能没有被显示,因为它不属于任何组,因为联系信息窗口可以选择将其添加到&#34;我的联系人&#34;
所以,我改变了我的代码,对刚创建的联系人执行更新,将其添加到&#34;我的联系人&#34;小组,就是这样。
现在,谷歌联系人管理网络工具正确显示,我唯一的问题是我使用的列表示例(链接如下)没有显示给我。
我还使用查询参数实现了搜索联系人(示例与上面相同),提供了我在联系人创建时使用的相同组,如下所示:
Query searchQuery = new Query( getListContactsFeedURL() );
searchQuery.setStringCustomParameter( "group",
getMyContactsGroupEntry().getId() );
但它对列表结果没有任何改变。
有什么想法吗?
谢谢和最诚挚的问候, 莫罗。
答案 1 :(得分:-1)
请阅读Google Official Documentation以帮助您开始使用Google Contacts API。
您需要Google Account进行测试。如果您已经拥有一个在API Console中注册了项目的测试帐户,那么您已完成所有设置;您可以访问Google Contacts API用户界面来设置,编辑或查看测试数据。
当您的应用程序请求非公共用户数据时,它必须包含访问令牌。该令牌还可识别您的Google应用程序。使用OAuth 2.0授权请求。您必须在Google API控制台中注册项目并启用Contacts API服务才能使用OAuth 2.0。