【问题标题】:Is there any tool around which generates library code automatically for Android starting from the Discovery document in the AppEngine?是否有任何工具可以从 AppEngine 中的 Discovery 文档开始为 Android 自动生成库代码?
【发布时间】:2013-11-13 16:54:24
【问题描述】:

我需要开发一个连接到 Google App Engine 的 Android 应用程序。

我能够生成客户端库代码,正如我找到的所有指南所解释的那样,但我担心发现文档应该足以生成客户端库代码,而它总是需要的(在至少在我发现的文档中)脚本在“服务器”端的代码上运行以生成库(这可以在 Eclipse 中或使用外部脚本完成)。

我发现here发现文档是用来生成苹果IOS代码的。我实际上不确定是否有任何方式可以在 Android 设备上以相同的方式进行操作。

会发生什么(据我所知):

"Backend->generation of discovery doc->client on IOS->automatic class generation->app"
"Backend->generation of discovery doc->python client->automatic class generation->app"
"Backend->generation of discovery doc->....."
"Backend->generation of Android Library->Android Java client->app"

因此,Android 客户端是一个例外,需要后端开发人员提供特定的额外输出。每次修改后端服务时都需要生成这个额外的输出。

有人可以帮我解决这个问题吗?

谢谢。

【问题讨论】:

  • 不确定你在问什么。这些文档描述了如何生成客户端库——使用适用于 iOS 的库生成器或适用于 Android 的 Python 脚本。无论哪种方式,您都必须运行脚本,这只是两种不同的方法。有什么问题?
  • 我想始终使用相同的来源,以便开发服务器端的人发布发现文档。客户端开发人员从这个类开始自动创建类(如果可能的话)。
  • 但这肯定已经发生了?您无需编写发现文档,而是公开端点并自动生成文档。 Android 界面也是如此。
  • 略有不同,我的意思是两边都做没有区别,但是如果你只开发Backend端,每次都要生成两个接口。我将修改帖子以使其更易于理解。
  • 我认为 Jekyll 是说为 Android 创建客户端代码的脚本将 服务器源代码 作为输入,而不是使用 API 发现文档(原样生成 iOS 客户端代码时的情况)。问题是您可能无法访问您可能想要使用的每个 API 的服务器端源代码。

标签: android google-app-engine


【解决方案1】:

取自go-endpoints documentation

$ URL='https://my-app-id.appspot.com/_ah/api/discovery/v1/apis/greeting/v1/rest'
$ curl -s $URL > greetings.rest.discovery

# Optionally check the discovery doc
$ less greetings.rest.discovery

$ GO_SDK/endpointscfg.py gen_client_lib java greetings.rest.discovery

go appengine SDK 可在此处获得: https://developers.google.com/appengine/downloads

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-17
    • 1970-01-01
    • 1970-01-01
    • 2013-03-30
    • 1970-01-01
    • 2017-03-24
    • 1970-01-01
    相关资源
    最近更新 更多