Android Studio
建立系统工具包你用来生成,测试,运行您的应用程序和软件包。构建系统是独立于Android的工作室,所以你可以调用它的Android的工作室或从命令行。在你写你的应用程序,你可以使用编译系统的特点:
定制,配置,和扩展的建立过程。为您的应用程序使用同一项目的不同特点,创建多个应用程序。
重用代码和资源。
AndroidStudio构建系统由Gradle构成。Gradle是一种高级的构建工具,用于管理依赖性,允许你定义自定义构建逻辑。
Android插件工具并不依赖于Android Studio,虽然Android Studio由它完全集成。
Gradle的配置包含以下方面
构建变量
构建系统可以根据不同的配置为同一个项目生成多个APK。当你想建立不同版本的应用程序,而不必为每个人单独的项目,这是很有用的。
依赖关系
构建系统管理项目的依赖,并从本地文件系统和远程存储库支持的依赖。这可以防止你不必搜索,下载和复制二进制包为你的依赖到你的项目目录。
清单条目
构建系统使您可以指定的值在生成配置清单文件中的某些元素。这些新的值将覆盖在manifest文件中的现有值。如果你想生成多个的
APK为您的项目中,他们每个人都有不同的包名,最小的SDK版本,或目标SDK版本,这是很有用的。
签名
构建系统使您可以指定生成配置签名设置,它可以在生成过程中签署您的APK。
ProGuard
构建系统使您可以指定一个不同的 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包,为应用模块。
Dependencies 依赖关系
Android Studio生成系统管理项目的依赖和支持模块依赖关系,局部二进制依赖,以及远程二进制依赖。
模块依赖关系
一个项目模块可以在构建文件中包括的其它模块的列表它依赖于。当你建立这个模块,构建系统组装,包括所需要的模块。
本地依赖性
如果你有二进制存档在你的本地文件系统中的一个模块依赖于,例如JAR文件,你可以在构建文件中该模块声明这些依赖关系。
远程依赖性
当你的一些依赖关系都可以在一个远程存储库,您不必下载它们,并将它们复制到您的项目。而Android工作室打造的系统支持远程的Maven的依赖关系。的Maven是一个受欢迎的软件项目管理工具,可帮助使用库组织项目的依赖关系。
许多流行的软件库和工具都可以在公共Maven仓库。对于这些依赖项,您只需要指定自己的Maven坐标,它唯一标识一个远程存储库中的每个元素。在构建系统中使用的Maven坐标的格式是组:名称:版本。例如,Maven的坐标为谷歌番石榴库16.0.1版本是 com.google.guava:番石榴:16.0.1。
在Maven的*存储库,广泛用于分发很多库和工具。
Build Tasks
Android Studio生成系统定义了一系列分层的构建任务:
*任务:用于产生必要的结果的任务。
构建系统提供项目任务:构建您的应用程序和模块的任务,以建立独立的模块。
Gradle Wrapper
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
Android Studio 简单功能介绍的更多相关文章
-
Android Studio(一):介绍、安装、配置
Android Studio相关博客: Android Studio(一):介绍.安装.配置 Android Studio(二):快捷键设置.插件安装 Android Studio(三):设置Andr ...
-
Android课程---Android Studio简单设置
Android Studio 简单设置 界面设置 默认的 Android Studio 为灰色界面,可以选择使用炫酷的黑色界面.Settings-->Appearance-->Theme, ...
-
【转】Android Studio简单设置
原文网址:http://ask.android-studio.org/?/article/14 Android Studio 简单设置 界面设置 默认的 Android Studio 为灰色界面,可以 ...
-
Android Studio简单设置(转)
Android Studio 简单设置 界面设置 默认的 Android Studio 为灰色界面,可以选择使用炫酷的黑色界面.Settings --> Appearance --> Th ...
-
Android Studio调试功能使用总结【转】
Android Studio调试功能使用总结[转] 这段时间一直在使用Intellij IDEA, 今天把调试区工具的使用方法记录于此. 先编译好要调试的程序. 1.设置断点 选定要设置断点的代码 ...
-
Android Studio调试功能使用总结---转
Android Studio调试功能使用总结[转] 这段时间一直在使用Intellij IDEA, 今天把调试区工具的使用方法记录于此. 先编译好要调试的程序. 1.设置断点 选定要设置断点的代码 ...
-
Android Studio 简单介绍和使用问题小结
原文 http://www.cnphp6.com/archives/59264 主题 Gradle Android Studio Android 随着android 5.0 的发布,android ...
-
Android Studio 简单设置
转自:http://ask.android-studio.org/?/article/14 界面设置 默认的 Android Studio 为灰色界面,可以选择使用炫酷的黑色界面.Settings - ...
-
在eclipse 导入简单的Android studio 简单项目
前言: 现在Android studio版本已经去到2.0(我暂时用着开发者版本)了,但是还是和以前的版本一样卡. (因为我用了很多第三方的UI控件,导致在Android studio build一个 ...
随机推荐
-
IOS之UI--自定义按钮实现代理监听点击事件
前言: Objective-C提供的按钮监听事件的方法是 不含参数的监听方法 [button实例对象 addTarget:self action:@selector(func) forControlE ...
-
.net发邮件
// 引入命名空间 using System.Net; using System.Net.Mail; SmtpClient smtp = new SmtpClient(); //实例化一个SmtpCl ...
-
AOJ 0121 广度优先搜索
题意:7数码问题.在2×4的棋盘上,摆有7个棋子,每个棋子上标有1至7的某一数字,不同棋子上标的数字不相同.棋盘上还有一个空格(用0表示),与空格相邻(上下左右)的棋子可以移到空格中,该棋子原先位置成 ...
-
●BZOJ 2149 拆迁队
题链: http://www.lydsy.com/JudgeOnline/problem.php?id=2149 题解: 斜率优化DP,栈维护凸包,LIS,分治(我也不晓得是不是CDQ分治...) 一 ...
-
[Swift]LeetCode203. 移除链表元素 | Remove Linked List Elements
Remove all elements from a linked list of integers that have value val. Example: Input: 1->2-> ...
-
如何获取Debug Android Hash Key
在接入FaceBook第三方登录的时候,需要获取Android Hash Key. Android Hash Key即密钥散列有两种,一种是开发秘钥散列,一种是发布秘钥散列.这里主要介绍如何获取开发秘 ...
-
【QT】QT更改构建目录
菜单“工具”-“选项”. Qt Creator怎样更改默认构建目录_百度经验 https://jingyan.baidu.com/article/6181c3e0b9d170152ef153af.ht ...
-
flask项目结构(二)创建flask,同步docker
简介: 建立flask容易,那么部署就比较麻烦了,配这个,配那个,更新………… 所以我从构建,就考虑部署的问题,使用docker部署. 程序都打包进docker,本博客有相关文章. pycharn直接 ...
-
guider – 全系统Linux性能分析器
Guider是一个免费且开源的,功能强大的全系统性能分析工具,主要以Python for Linux 操作系统编写. 它旨在衡量系统资源使用量并跟踪系统行为,从而使其可以有效分析系统性能问题或进行性能 ...
-
C语言——常用标准输入输出函数 scanf(), printf(), gets(), puts(), getchar(), putchar(); 字符串拷贝函数 strcpy(), strncpy(), strchr(), strstr()函数用法特点
1 首先介绍几个常用到的转义符 (1) 换行符“\n”, ASCII值为10: (2) 回车符“\r”, ASCII值为13: (3) 水平制表符“\t”, ASCII值为 9 ...