0

首先,由于 Google API 的 Java 客户端库已经进行了许多更新,有人可以从 Android 应用程序开发的角度确认现在正确的 jars / maven 依赖项是什么吗?

我开始查看针对上述库的 v1.4.1-beta 记录的 Google Tasks API 示例 [链接如下]。

http://code.google.com/apis/tasks/articles/oauth-and-tasks-on-android.html

将 1.6.0-beta 依赖项与 Maven、ADT 16、Eclipse Indigo 和 m2e-android 一起使用会导致编译错误,这是由该库所依赖的一些第 3 方依赖项引起的。

我最初向 Maven Android Developers Google Group [link below] 提出了我的编译问题,该小组友好地强调了这些问题,并指出需要在父 pom.xml 中使用提供的范围声明某些 API,例如 httpclient。

http://groups.google.com/group/maven-android-developers/browse_thread/thread/c98d8074a6c34e8f

最初按照上述库的谷歌代码主页中的建议在这里提出这个问题,因为澄清我的开场问题会很好,但也请告知我是否应该将其发布到其他地方以提出上述问题。

亲切的问候杰森

4

1 回答 1

0

http://code.google.com/p/google-api-java-client/wiki/OAuth2Draft10页面上的示例程序无法使用 1.6.0-beta 进行编译。但要对其进行调整,我只需要进行两项更改:

1. 改变 ByteArrayContent 的构造方式。

HttpRequest request = rf.buildPostRequest(shortenEndpoint, new ByteArrayContent(requestBody));

将其更改为

HttpRequest request = rf.buildPostRequest(shortenEndpoint, ByteArrayContent.fromString(null, requestBody));

2.改变设置内容类型的方式。

request.headers.contentType = "application/json";

将其更改为

request.getHeaders().setContentType("application/json");

我不得不查看 1.6.0-beta 的源代码来解决这个问题。Google 至少应该发布 1.6.0-beta javadoc。

于 2012-02-11T03:14:02.447 回答