【问题标题】:Google Endpoints Android with Python Backend带有 Python 后端的 Google Endpoints Android
【发布时间】:2013-11-04 14:38:45
【问题描述】:

好的。所以我研究了几天,找不到解决我问题的答案。我有一个 Google App Engine Python 项目,我已经为学校工作了几个月,现在我希望添加一个 Android 应用程序来配合它。我在 Python 中创建了一个在 Javascript 和 API 控制台上工作的 API 服务器。我已经运行了命令“endpointscfg.py get_client_lib java -o . [my_module.MyApi]”,它生成了一个带有 [projectName]-[Api]-v1-20131104131234-java-1.17.0-rc-sources 的 .zip 文件。罐。我将此添加到我的新 Android 项目的 libs/ 目录中,并在构建路径中添加了对它的引用。导入时我也可以看到 [Api] 名称包。但是,当尝试从我的 API 实例化一个对象时,它没有从我的 API 中找到任何东西。如果该 source.jar 文件不包含我在 Android 项目中的 Python API 中编写的对象,我该如何实例化它?谢谢!

【问题讨论】:

    标签: android python google-app-engine google-cloud-endpoints


    【解决方案1】:

    这个*-sources.jar 目前拥有的是你的客户端库的源代码,你需要在一个Java项目中自己构建它。一种方法是按照此页面中的说明进行操作https://developers.google.com/appengine/docs/java/endpoints/consume_android

    本文档有点过时了,因为您现在使用的是 Google Java 客户端版本 1.17.0-rc,而不是 1.12.0。您需要做的基本上是1)解压缩源jar,2)将源代码添加到一个java项目中; 3) 将库依赖项添加到您的项目 libs 目录和类路径中; 4)构建项目,并可能将其作为您真正的android项目的依赖项目。

    这可能会花费您很多时间。所以另一种方法是从 endpointscfg.py 命令生成一个 Maven/Gradle 客户端包。您可以在命令中添加“-bs=maven”或“-bs=gradle”(“bs”选项自 App Engine SDK 1.8.6 起可用:https://developers.google.com/appengine/docs/python/endpoints/endpoints_tool)。您将获得一个“更小”的 Maven/Gradle 客户端包。按照包中 readme.html 文件中的说明,您可以了解如何在 Android 项目中调用 API。这要容易得多,只需运行“mvn install”并将 Maven/Gradle 依赖项添加到您的 Android 项目中,如果您在 Android 项目中使用 Maven 或 Gradle,我会推荐。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-31
      • 2015-07-13
      • 2014-05-03
      • 1970-01-01
      • 2017-08-10
      • 2016-04-29
      相关资源
      最近更新 更多