【发布时间】:2015-03-10 18:19:31
【问题描述】:
我有一个 Android-Application 项目和一个 AppEngine-BackEnd 项目,用作 android 应用程序的后端。 我使用 Google Plugin 从 appengine 项目中为 android 客户端生成客户端库。
AppEngine-BackEnd 定义了一个端点“AppEndPoint”。 我已经发布了第一个版本的 android 应用和 appengine 应用。
现在我想对端点进行一些修改,最终将 API 版本更改为“v2”。
我做了什么
在 AppEngine 项目中,我复制了现有的 AppEndPoint 类并将其重命名为 AppEndPointV2 并对新类进行了必要的修改。还用 version="v2" 注释了新类。当我部署该应用程序时,可以在 API 资源管理器中看到 v1 和 v2 版本,如预期的那样。
现在,当我使用 Google 插件 (Eclipse) 为 android 应用程序生成客户端库时,它会同时导出 v1 和 v2 并生成错误“Appendpoint 类型已定义”
我希望新导出的客户端库中只有 v2。所以从这里我觉得我的方法有问题。我在网上和 StackOverflow 上搜索了很多。但无法获得执行此操作的确切方法。主要是搜索有点困难,因为关键字'endpoint'、'api'、'version'等非常通用。
我想要什么
- 我现有的(已经发布的客户端应用)应该仍然能够访问 API 的 v1。
- 新应用应该使用 v2
所以我想知道
- 维护不同版本的端点 API 的推荐方法是什么。如何编写课程。在每个版本的 API 上复制端点类并对其进行更改是推荐的方式吗?
- 如何告诉插件我只想将端点的 v2 导出到端点客户端库?
注意:我使用的是 AppEngine-JAVA,而 Eclipse 是 IDE
【问题讨论】:
标签: java android eclipse google-app-engine google-cloud-endpoints