Google API会创建联系人,但它在哪里?

时间:2016-12-09 11:03:48

标签: google-contacts

经过大量的研究和测试后,我最终使用下面的库访问谷歌联系人,因为我需要创建联系人:

<dependency>
    <groupId>com.google.gdata</groupId>
    <artifactId>core</artifactId>
    <version>1.47.1</version>
</dependency>

使用Two Legged OAuth2和Google Playground的连接工作正常(我只需要创建一个刷新访问令牌的实用类),并且我已经成功列出了contats。

我必须说,我不能完全理解我从联系人列表中获得的结果与我访问google测试帐户的联系人选项时实际看到的结果相比,但这是另一天的问题。

我需要快速解决的问题是创建联系人。

我已使用以下链接中的代码:

Google Docs Creating contacts

虽然代码表现完全正常(没有例外,我收到新的联系人ID并在日志上打印),但我无法在Google帐户上看到这个新联系人,并使用该商家信息将其取回联系api。

你们可以帮帮我吗?

谢谢和最诚挚的问候, 莫罗。

2 个答案:

答案 0 :(得分:1)

我昨天注意到,尽管创建的联系人没有出现在&#34; Google通讯录&#34;网络管理工具(下面的链接),确实创建并存储在某个地方。

Google Contacts

我注意到,当我试图搜索它时。

然后,该联系人显示为已过滤的项目,当我点击它时,会显示一个联系人窗口,其中包含所有信息以创建它。

我开始怀疑它可能没有被显示,因为它不属于任何组,因为联系信息窗口可以选择将其添加到&#34;我的联系人&#34;

所以,我改变了我的代码,对刚创建的联系人执行更新,将其添加到&#34;我的联系人&#34;小组,就是这样。

现在,谷歌联系人管理网络工具正确显示,我唯一的问题是我使用的列表示例(链接如下)没有显示给我。

Retrieving All Contacts

我还使用查询参数实现了搜索联系人(示例与上面相同),提供了我在联系人创建时使用的相同组,如下所示:

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。