AS中的Gradle文件配置
2016-12-19 00:00
106 查看
AS中的Gradle文件配置
参考链接总览
Android app module 的构建过程
自定义构建配置
Build TypesBuild types 通常用于定义开发周期中的不同阶段,例如在 debug 阶段开启debug选项, release 阶段开启代码压缩、代码混淆并使用正式的key对apk进行签名。
Product Flavors
Product flavors 代表app发行的不同版本,例如免费版和付费版,可以让不同的 Product flavors 使用不同的代码和资源文件,或者只是定义不同的渠道包。
defaultConfig 属于 Product Flavors,相当于默认的基本配置
Build Variants
build variant = product flavor + build type, Gradle会把 product flavor 和 build type 的配置组合在一起,形成一个 build variant 的配置,由系统自动生成。
Manifest Entries
build variant 的部分配置信息会直接覆盖到 manifest 文件上去,例如 applicationId、versionName、target SDK version 等。
也可以通过 manifestPlaceholders 来配置跟不同的 build variant 相关的变量
defaultConfig { manifestPlaceholders = [NAME:"value"] }
然后这样在 manifest 中使用变量
<meta-data android:name="TYPE_VALUE" android:value="${NAME}" />
Dependencies
构建系统通过 dependencies 来管理本地依赖文件和远程仓库依赖。
Signing
可以在不同的 buildTypes 中配置 signingConfig 来选择签名配置,构建系统会使用默认的key去打包 debuggable 为 true 的版本,release版本的 signingConfig 需要自己配置。
一个 applicationId 唯一确定一个apk
相同的 applicationId,打包的key不同的话,以最先发布的apk的key为准
ProGuard
不同的 build variants 可以采用不同的 ProGuard rules file,当配置了多个时,会把它们合并到一起。
APK Splits
可以使用指定的代码和资源文件来打包对应不同分辨率的apk。(当你的apk为了支持不同分辨率导致体积在100M以上时,才推荐这么做)
源代码设置
不同目录下的代码和资源文件会按照是否需要以及相应的优先级合并到一起,组合成最后的 buildVariant 所对应的代码src/main/
This source set includes code and resources common to all build variants.
src/buildType/
only for a specific build type.
src/productFlavor/
only for a specific product flavor.
src/productFlavorBuildType/
only for a specific build variant.
当不同目录的代码有冲突时,会按照下面的优先级来选择
build variant > build type > product flavor > main source set > library dependencies
相关文章推荐
- as通过gradle实现多渠道打包+使用配置文件进行版本管理+指定apk输出路径和apk文件名
- as通过gradle实现多渠道打包+使用配置文件进行版本管理+指定apk输出路径和apk文件名
- as通过gradle实现多渠道打包+使用配置文件进行版本管理+指定apk输出路径和apk文件名
- AS中build.gradle文件配置讲解
- 较完整的配置AS项目的build.gradle文件
- gradle教程 [原创](eclipse/ADT下 非插件 非Android Studio/AS)纯手打 第一篇:安装配置gradle
- getResourceAsStream 读取配置文件
- ClassLoader.getResourceAsStream(name);获取配置文件的方法
- mysql配置文件不生效以及配置同步复制报错“The server is not configured as slave”解决办法
- ClassLoader.getResourceAsStream(name);获取配置文件的方法
- 用静态代码块读取数据库配置文件:tResourceAsStream的配置文件路径问题
- Android Studio升级1.0 现有程序 build.gradle配置文件更新
- ClassLoader.getResourceAsStream(name);获取配置文件的方法
- gradle 配置文件 build.gradle 属性详解
- Android Studio Gradle 配置文件样例
- 在gradle中配置apk的签名文件keystore
- Android Studio下通过Gradle配置实现资源文件的模块化
- gradle配置文件在linux下语法高亮
- 基于DotNet构件技术的企业级敏捷软件开发平台 - AgileEAS.NET平台开发指南 - 配置文件
- getClass().getResourceAsStream() .获取配置文件的方法