【Android Gradle 插件】BuildType 编译类型配置 ⑧ ( versionNameSuffix 配置 | zipAlignEnabled 配置 | initWith 方法 )
文章目录
Android Plugin DSL Reference 参考文档 :
- 文档主页 : https://google.github.io/android-gradle-dsl/2.3/
- AppExtension ( build.gradle#android 配置 ) 文档位置 : android-gradle-dsl-gh-pages/2.3/com.android.build.gradle.AppExtension.html
- build.gradle#android 模块配置文档 : android-gradle-dsl/2.3/com.android.build.gradle.AppExtension.html
- ProductFlavor ( build.gradle#android#defaultConfig 配置 ) 文档 : android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.ProductFlavor.html
- ProductFlavor#externalNativeBuild 配置 ( build.gradle#android#defaultConfig#externalNativeBuild 配置 ) : com.android.build.gradle.internal.dsl.ProductFlavor:externalNativeBuild
- ExternalNativeBuildOptions ( build.gradle#android#defaultConfig#externalNativeBuild 配置 ) 文档位置 : android-gradle-dsl-gh-pages/2.3/com.android.build.gradle.internal.dsl.ExternalNativeBuildOptions.html
- NdkBuildOptions ( build.gradle#android#defaultConfig#externalNativeBuild#ndkBuild 配置 ) 文档位置 : android-gradle-dsl-gh-pages/2.3/com.android.build.gradle.internal.dsl.NdkBuildOptions.html
- CmakeOptions ( build.gradle#android#defaultConfig#externalNativeBuild#cmake 配置 ) 文档位置 : android-gradle-dsl-gh-pages/2.3/com.android.build.gradle.internal.dsl.CmakeOptions.html
- JackOptions ( build.gradle#android#defaultConfig#jackOptions 配置 ) 文档位置 : android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.JackOptions.html
- AnnotationProcessorOptions ( 注解处理器配置 ) ( build.gradle#android#defaultConfig#javaCompileOptions配置 ) 文档位置 : android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.AnnotationProcessorOptions.html
- NdkOptions ( build.gradle#android#defaultConfig#ndk 配置 ) 文档位置 : android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.NdkOptions.html
- VectorDrawablesOptions ( build.gradle#android#defaultConfig#vectorDrawables 配置 ) 文档位置 : android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.VectorDrawablesOptions.html
- BuildType ( build.gradle#android#buildTypes 配置 ) 文档位置 : android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.BuildType.html
- SigningConfig ( build.gradle#android#signingConfigs 配置 ) 文档位置 : android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.SigningConfig.html
- NDK 参考文档 : Add C and C++ Code to Your Project.
一、BuildType#versionNameSuffix 配置
BuildType ( build.gradle#android#buildTypes 配置 ) 文档位置 : android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.BuildType.html
BuildType#versionNameSuffix 配置 用于 配置 该编译类型的 版本号名称的后缀 ;
在计算 变体 ( debug 或 release ) 的最终版本名时,这会附加到 “基本” 版本名之后 , 基本版本名称就是 defaultConfig 中的 versionName "1.0"
配置 ;
版本名称后缀 ;
在计算 变体 ( debug 或 release ) 的最终版本名时,这会附加到 “基本” 版本名之后。
BuildType#versionNameSuffix 配置原型 :
String versionNameSuffix
Version name suffix.
This is appended to the "base" version name when calculating the final version name for a variant.
二、BuildType#zipAlignEnabled 配置
BuildType ( build.gradle#android#buildTypes 配置 ) 文档位置 : android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.BuildType.html
BuildType#zipAlignEnabled 配置 作用是 配置该编译类型 ( debug / release ) 是否进行优化对齐操作 ;
BuildType#zipAlignEnabled 配置原型 :
boolean zipAlignEnabled
Whether zipalign is enabled for this build type.
三、BuildType#initWith 方法
BuildType ( build.gradle#android#buildTypes 配置 ) 文档位置 : android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.BuildType.html
BuildType#initWith 方法 作用是 拷贝一个 " 给定的 编译类型 " 的 " 所有属性 " ;
BuildType#initWith 方法原型 :
DefaultBuildType initWith(BuildType that)
Copies all properties from the given build type.
It can be used like this:
android.buildTypes {
customBuildType {
initWith debug
// customize...
}
}
使用示例 : 在 " android # buildTypes " 下定义 tom 编译类型 , 在 tom 编译类型中 , 使用 initWith 方法 ; 此时 如果不配置 tom 编译类型的其它选项 , 则 tom 编译类型 与 debug 是一模一样的 ;
android {
compileSdkVersion 30
buildToolsVersion "30.0.3"
defaultConfig {
applicationId "kim.hsl.svg"
minSdkVersion 18
targetSdkVersion 30
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
signingConfigs {
mySigningConfig {
storeFile file("debug.keystore")
storePassword "android"
keyAlias "androiddebugkey"
keyPassword "android"
}
}
buildTypes {
release {
// 是否开启优化混淆
minifyEnabled true
// 是否启用资源压缩 , 未使用的资源会被优化
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
debug {
//applicationIdSuffix ".jerry"
signingConfig signingConfigs.mySigningConfig
testCoverageEnabled true
}
tom {
initWith debug
}
}
}
相关文章
- 74款android开机动画,修改Android系统开机动画
- android签名命令行,Android系统签名位置及命令
- android okio使用方法,Android 开源框架 Okio 原理剖析「建议收藏」
- strictmode android,(十三)Android 性能优化 StrictMode
- 测试android sdk是否安装成功,配置Android SDK
- Android n_android 反编译
- mac下Android Studio 安装和使用adb
- Android 数据库加密 android-database-sqlcipher 开源版本编译过程
- 【Android FFMPEG 开发】FFMPEG 直播功能完整流程 + 源码 ( 源码交叉编译 -> AS工程配置 -> 音视频打开/读取/解码/格式转换 -> 原生绘制播放 -> 音视频同步 )
- 【错误记录】NDK 导入外部 so 动态库报错 ( java.lang.UnsatisfiedLinkError | Android Studio 配置外部 so 动态库两种方法 )
- 【Android 安装包优化】资源打包配置 ( resources.arsc 资源映射表 | 配置国际化资源 )
- 【AOP 面向切面编程】Android Studio 中配置 AspectJ ( 下载并配置AS中 jar 包 | 配置 Gradle 和 Gradle 插件版本 | 配置 Gradle 构建脚本 )
- 【Android Gradle 插件】Module 目录下 build.gradle 配置文件 ( android 闭包块配置 | AppExtension 扩展类型参考文档 )
- 【错误记录】Android 应用安装后出现两个启动图标 ( 排查应用及依赖库中配置了 android.intent.category.LAUNCHER 的 Activity )
- 【Android Gradle 插件】ProductFlavor 配置 ( ProductFlavor#resValue 方法 | ProductFlavor#dimension 维度属性 )
- 【Android Gradle 插件】DexOptions 配置 ⑤ ( additionalParameters 属性配置 | --minimal-main-dex 参数最小化主 dex 字节码 )
- 【Android Gradle 插件】LintOptions 配置 ④ ( Lint 问题 ID | fatal 方法配置 | ignore 方法配置 | warning 方法配置 )
- 【Android Gradle 插件】TestOptions 配置 ⑤ ( Test 单元测试配置类 | 设置包含或排除单元测试 | 设置堆大小 | 设置测试前后执行的逻辑 )
- 【Android Gradle 插件】将自定义 Gradle 插件上传到自建 Maven 仓库 ⑥ ( 配置 Sonatype Nexus 搭建的 Maven 私服 | 配置端口号 | 配置JVM )
- 【Android Gradle 插件】Gradle 基础配置 ③ ( 生成 Gradle Wrapper 配置 | 分析生成的 gradle-wrapper.properties 配置文件 )
- 【Unity3D】Android 打包 ② ( Android 编译选项 | Android 工程设置 | 配置基本信息 | 配置不同分辨率图标 | 配置启动动画 | 其它设置 )
- Android开发中遇到的问题(二)——新建android工程的时候eclipse没有生成MainActivity和layout布局详解手机开发
- Android Studio 环境配置优化详解手机开发
- 怎么实现服务器给android客户端主动推送消息详解手机开发
- android 播放视频详解编程语言
- 非常实用的Android Studio快捷键详解编程语言
- Android中使用ListView实现漂亮的表格效果