所以我有一个带有app引擎后端的Android应用程序(App-Engine Connected Android Project)。回到我以前在Eclipse工作时,我可以编译后端,然后为android生成端点,然后在android上工作。但是现在在Android Studio上,如果没有构建Android应用程序,我似乎无法构建服务器。问题是我的Android应用程序还没有准备好编译。那么我如何在服务器上工作并编译和部署Android应用程序?毋庸置疑,我对Android Studio非常陌生。但我知道eclipse工作流程,这是
答案 0 :(得分:0)
您的Android Studio项目可能是一个多模块项目,即它将拥有一个服务器端应用程序和一个Android应用程序。
Android Studio使用Gradle作为其构建工具,因此您可以选择分别在每个项目上处理特定的Gradle任务(清理,编译,构建等)。您无需始终启动或运行整个构建过程,该过程将尝试查看依赖项,然后构建所有内容。
由于您希望单独使用Server应用程序并准备好,我建议您可以运行特定于该项目的构建任务。在命令器视图中,您将分别看到每个项目的Gradle任务,您可以运行它。或者,您也可以前往终端查看任务和/或单独运行这些任务。
例如假设你有一个名为MyApp
的Android Studio项目,它有两个名为app
和api
的模块。 app
是Android模块,api
是具有云端点的服务器端模块。如果您访问终端或命令行并转到根文件夹,则可以通过gradle <modulename>:<taskname>
为每个模块运行Gradle特定任务。
希望这会有所帮助。
答案 1 :(得分:0)
假设 MyApplication (root)的项目结构 app (android)和后端(appengine)
如果您只想构建后端。您应该在该gradle模块上运行assemble
任务。不幸的是,直接从“Gradle”选项卡运行任务似乎没有单独针对模块运行任务,它会在所有内容上运行它。所以你有两个选择。
./gradlew :backend:assemble
Backend Build
(或其他),
MyApplication:backend
(从下拉列表中选择),
:backend:assemble
两者看起来都很烦人。您还可以尝试在运行时直接启动单个模块重建。
如果您查看后端运行配置(运行 - &gt;编辑配置),请在Before launch:
部分中看到Make
执行项目重建。您可能需要从运行配置中删除它,以便它在部署之前不会尝试重建整个项目。要使用模块的gradle汇编替换它,请单击+,然后添加新的Run Gradle task
并在“2”中按上面的配置进行配置。
我已经针对此提出了一个错误:https://code.google.com/p/android/issues/detail?id=168875&thanks=168875&ts=1429554595我认为应该切换默认行为(使用gradle assemble而不是make)。
在Gradle中使用一些魔法来生成客户端库。如果您查看Android应用的构建文件,它应该引用名为android-endpoints
的后端上的配置,以便将端点生成为应用>的> 模块