安卓工程
2017-02-25 本文已影响0人
素然年华
Android Studio项目目录结构介绍
- Project 结构类型
app/build/ app模块build编译输出的目录
app/build.gradle app模块的gradle编译文件
app/app.iml app模块的配置文件
app/proguard-rules.pro app模块proguard文件
build.gradle 项目的gradle编译文件
settings.gradle 定义项目包含哪些模块
gradlew 编译脚本,可以在命令行执行打包
local.properties 配置SDK/NDK
MyApplication.iml 项目的配置文件
External Libraries 项目依赖的Lib, 编译时自动下载的
- Android结构类型
app/manifests AndroidManifest.xml配置文件目录
app/java 源码目录
app/res 资源文件目录
Gradle Scripts gradle编译相关的脚本
为什么要用Gradle?
Gradle是比较先进的构建系统,也是一个很好的构建工具,允许通过插件自定义构建逻辑
- 使用领域专用语言(Domain Specific Language)来描述和处理构建逻辑。(以下简称DSL)
- 基于Groovy。DSL可以混合各种声明元素,用代码操控这些DSL元素达到逻辑自定义。
- 支持已有的Maven或者Ivy仓库基础建设
- 非常灵活,允许使用best practices,并不强制让你遵照它的原则来。
- 其它插件时可以暴露自己的DSL和API来让Gradle构建文件使用。
- 允许IDE集成,是很好的API工具
现在,搞APP开发居多,编译/打包等问题立即就成痛点了。比如:
- 一个APP有多个版本,Release版、Debug版、Test版。甚至针对不同APP Store都有不同的版本。在以前ROM的环境下,虽然可以配置Android.mk,但是需要依赖整个Android源码,而且还不能完全做到满足条件,很多事情需要手动搞。一个app如果涉及到多个开发者,手动操作必然会带来混乱。
- library工程我们需要编译成jar包,然后发布给其他开发者使用。以前是用eclipse的export,做一堆选择。要是能自动编译成jar包就爽了。
上述问题对绝大部分APP开发者而言都不陌生,而Gradle作为一种很方便的的构建工具,可以非常轻松得解决构建过程中的各种问题。