标签:
建立系统工具包你用来生成,测试,运行您的应用程序和软件包。构建系统是独立于Android的工作室,所以你可以调用它的Android的工作室或从命令行。在你写你的应用程序,你可以使用编译系统的特点:
定制,配置,和扩展的建立过程。
为您的应用程序使用同一项目的不同特点,创建多个应用程序。
重用代码和资源。
AndroidStudio构建系统由Gradle构成。Gradle是一种高级的构建工具,用于管理依赖性,允许你定义自定义构建逻辑。
Android插件工具并不依赖于Android Studio,虽然Android Studio由它完全集成。
构建变量
构建系统可以根据不同的配置为同一个项目生成多个APK。当你想建立不同版本的应用程序,而不必为每个人单独的项目,这是很有用的。
依赖关系
构建系统管理项目的依赖,并从本地文件系统和远程存储库支持的依赖。这可以防止你不必搜索,下载和复制二进制包为你的依赖到你的项目目录。
清单条目
构建系统使您可以指定的值在生成配置清单文件中的某些元素。这些新的值将覆盖在manifest文件中的现有值。如果你想生成多个的
APK为您的项目中,他们每个人都有不同的包名,最小的SDK版本,或目标SDK版本,这是很有用的。
签名
构建系统使您可以指定生成配置签名设置,它可以在生成过程中签署您的APK。
构建系统使您可以指定一个不同的 ProGuard的规则文件的每个版本变量。构建系统可以运行ProGuard的生成过程来混淆你的类。
测试
构建系统生成的项目中的测试源测试??APK,所以你不必创建一个单独的测试项目。构建系统可以在生成过程中运行测试。
Gradle构建文件使用Groovy的语法。Groovy是一种动态语言,你可以用它来 ??定义自定义生成逻辑,并与Android的插件Gradle提供了Android特有的元素进行交互。
按照惯例建立
Android Studio生成系统假定合理的默认值的项目结构和其他编译选项。
如果您的项目符合这些约定,你的Gradle构建文件是很简单的。当一些这些公约并不适用于你的项目,使您可以配置生成过程的几乎每一个方面。
例如,如果您的项目的源位于比默认值不同的目录,你可以在构建文件中指定此位置。
一个项目代表一个完整的Android应用程序。Android Studio项目包含一个或多个module 。一个module 是您的应用程序的独立组件,
你可以构建,测试或调试。module 包含您的应用程序的源代码和资源。Android的Studio项目包含三种模块:
Java库模块
包含可重用的代码。构建系统生成一个JAR包的Java库模块。
Android库模块
包含可重复使用的Android特有的代码和资源。构建系统产生AAR(安卓归档)包库模块。
Android应用程序模块
包含应用程序代码,并可能依赖于库模块,虽然很多Android应用程序只包含一个应用程序的模块。构建系统生成APK包,为应用模块。
Android Studio生成系统管理项目的依赖和支持模块依赖关系,局部二进制依赖,以及远程二进制依赖。
模块依赖关系
一个项目模块可以在构建文件中包括的其它模块的列表它依赖于。当你建立这个模块,构建系统组装,包括所需要的模块。
本地依赖性
如果你有二进制存档在你的本地文件系统中的一个模块依赖于,例如JAR文件,你可以在构建文件中该模块声明这些依赖关系。
远程依赖性当你的一些依赖关系都可以在一个远程存储库,您不必下载它们,并将它们复制到您的项目。而Android工作室打造的系统支持远程的Maven的依赖关系。的Maven是一个受欢迎的软件项目管理工具,可帮助使用库组织项目的依赖关系。
许多流行的软件库和工具都可以在公共Maven仓库。对于这些依赖项,您只需要指定自己的Maven坐标,它唯一标识一个远程存储库中的每个元素。在构建系统中使用的Maven坐标的格式是组:名称:版本。例如,Maven的坐标为谷歌番石榴库16.0.1版本是 com.google.guava:番石榴:16.0.1。
在Maven的中央存储库,广泛用于分发很多库和工具。
Android Studio生成系统定义了一系列分层的构建任务:
顶级任务:用于产生必要的结果的任务。
构建系统提供项目任务:构建您的应用程序和模块的任务,以建立独立的模块。
Android Studio项目包含的Gradle Wrapper由以下构成:
A JAR file
A properties file
A shell script for Windows platforms
A shell script for Mac and Linux platforms
Note:你应该提交以上所有的文件到资源控制系统。
使用Gradle wrapper(而不是本地Gradle安装),确保您始终运行的Gradle在属性文件中定义的版本。要配置您的项目使用Gradle较新版本,
编辑属性文件并指定新的版本。
Android Studio 会从Gradle Wrapper目录下读取你的配置文件,然后运行改wrapper,因此你可以根据不同版本的Gradle无缝的处理多个项目
Android Studio 不支持Shell脚本,因此你应该在Gradle文件中定义自定义的逻辑来替代。
ps: http://blog.csdn.net/xushuaic/article/details/26097663
标签:
原文地址:http://www.cnblogs.com/maxinliang/p/4951383.html