【问题标题】:Use google-api-java-client for non-Google API purposes将 google-api-java-client 用于非 Google API 目的
【发布时间】:2011-07-31 17:13:32
【问题描述】:

我以前使用 XStream 处理所有 XML,但现在由于弃用,我不得不为两个 API 切换到 JSON,其中一个是 Google API。由于这个 google-api-java-client 应该在 Android 上运行良好,并且允许以极少的几行代码来实现这一点,因此我可能会使用它。

Yaniv's Google I/O 2011 presentation还在耳边响起:

这个库基本上是为 Web 上的任何 API 设计的。 ... 为什么要为一个供应商使用不同的库,而为另一个供应商使用不同的库?理想情况下,您需要一个可以与几乎任何 API 一起使用并具有一致体验的库。

没错。所以这是我的问题:我如何将这个库的某些部分重用于类似但非 Google API ,让我的生活更轻松?有没有人有这方面的经验,或者代码示例?

另一个 API 使用 JSON。我说的是匿名获取数据的非常简单的 REST 调用(即没有 API 密钥或 OAuth)。没有高级的东西。我很乐意建立自己的模型类,当然意识到它们不可用。在 REST 方面,我可能是一名中级开发人员。我将根据 Android SDK 级别使用两种不同的传输方法和两种不同的 JSON 解析器。

编辑:是的,为 Google API 实现客户端轻而易举,除了与新的配额限制搏斗。

【问题讨论】:

    标签: android json api google-api google-api-java-client


    【解决方案1】:

    在没有看过 API 的情况下,很难说哪些组件可以重用以及如何重用 :)

    我可能首先将客户端直接指向新的 API 并检查有什么问题。如果在使用调试器进行挖掘后问题看起来还不错,我会根据需要调整客户端。

    但是,如果您真的只是从简单的 REST API 中读取数据,您可能不会从尝试重用 Google 客户端中发现很多好处。 HTTP 客户端与 JSON 解析器(如 Jackson)相结合可能就足够了,而且不那么复杂。

    ~~珍妮

    【讨论】:

    • 好的,所以这个库中没有用于此目的的真正设施?我已经有一个 http GET 的代码,但这正是库中广泛的内容,不是吗?至于 JSON 解析,无论如何我都必须这样做。由于 Android,我使用 GSON。
    • 在最新发布的版本(v1.5:在此处可用:code.google.com/p/google-api-java-client/downloads/list)中,库实际上已被划分为更小的功能组件。这应该可以更轻松地重用您需要的内容:HTTP 客户端、OAuth 客户端和 API 客户端的其余部分。这应该可以更容易地确定哪些内容对您正在使用的 API 有用。
    猜你喜欢
    • 1970-01-01
    • 2021-05-27
    • 2011-05-09
    • 1970-01-01
    • 2012-03-24
    • 1970-01-01
    • 1970-01-01
    • 2016-12-19
    • 1970-01-01
    相关资源
    最近更新 更多