1

生成云端点客户端库Android Studio中,同时遵循这里列出的步骤:使用实体类设计模式

https://cloud.google.com/developers/articles/how-to-build-mobile-app-with-app-engine-backend-tutorial/

创建一个云终端,但使用过Android Studio,而不是Eclipse的,我被困在如这里所描述的实体类设计模式的第9步:

https://cloud.google.com/developers/articles/how-to-build-mobile-app-with-app-engine-backend-tutorial/#ecdp

在Eclipse中,有一个右键菜单选项“生成云客户终端的lib rary“,当你右键点击应用程序引擎项目。然而,在Android Studio(v1.0.0)中没有相同的选项

这是Google的遗漏还是我错过了一些东西。

从Android Studio中生成云端点客户端库的最佳解决方法是什么?

有没有办法从命令行执行它?

我在这里找到gradle这个步骤:

https://cloud.google.com/appengine/docs/java/endpoints/endpoints_tool

这里:

https://cloud.google.com/appengine/docs/java/endpoints/consume_android

但这些都是更加耗时比中描述的单步过程日食的原始链接。

回答

2

我们正在努力更新购物卡丁车示例以使用Android Studio。

同时在AS产生终点的文档都可以在这里https://cloud.google.com/tools/android-studio/

发现没有了“生成云客户终端库”的任务,因为它不是在Android Studio工作流程需要。简单地构建项目将确保客户端库可用于您的Android应用程序。

如果希望能够使用Gradle从命令行手动执行某些端点客户端库步骤,请查阅appengine gradle插件https://github.com/GoogleCloudPlatform/gradle-appengine-plugin的文档。

+0

你好,当你说“在此期间在AS产生终点的文档可以在这里找到https://cloud.google.com/mobile/“,你能确认你指的是页面右下角的codelab链接吗?或者你的意思是另一个链接,在这个相当普通和复杂的页面上?在此先感谢 – 2015-10-14 18:39:56

+0

其实链接内容已更改。我已更新我的回复中的链接。感谢您让我知道。 – 2015-11-04 20:54:44

3

如上所述,库是自动编译为您,另一点要注意,让我困惑的是从哪里获得Builder。

从Android Studio 1.0.1开始,原来的Eclipse指令已经过时了,因此“Builder”不再被埋入您所创建的Endpoint类中。相反,它被分成一个独立的API类来描述Builder和相关的代码。

参见:https://github.com/GoogleCloudPlatform/gradle-appengine-templates/tree/master/HelloEndpoints

于Android

端点使用现在看起来是这样的:

/* OLD 
MyEndpoint.Builder builder = ... */ 

MyApi.Builder builder = new MyApi.Builder(AndroidHttp.newCompatibleTransport(), 
       new AndroidJsonFactory(), null) 
      // options for running against local devappserver 
      // - 10.0.2.2 is localhost's IP address in Android emulator 
      // - turn off compression when running against local devappserver 
      .setRootUrl("http://10.0.2.2:8080/_ah/api/") 
      .setGoogleClientRequestInitializer(new GoogleClientRequestInitializer() { 
       @Override 
       public void initialize(AbstractGoogleClientRequest<?> abstractGoogleClientRequest) throws IOException { 
        abstractGoogleClientRequest.setDisableGZipContent(true); 
       } 
      }); 
1

正如吕西安·默里 - 皮茨解释说,该生成器是不是在端点类,但在自动生成的XXXXApi类。

想象一下你的java bean是包下com.example.backend称为投资组合类

您必须添加以下导入在的AsyncTask类:

进口com.example.backend.portfolioApi.PortfolioApi ;

,然后你可以做

PortfolioApi.Builder建设者=新PortfolioApi.Builder(....