- 配置应用程序的构建类型
- 新增一个构建类型:
- 新增一个构建类型:
配置应用程序的构建类型
构建类型 Build Types非常重要,在这里可以配置构建版本的一些非常重要的参数,默认有两个构建版本:debug和release。
默认的debug和release的区别只有Debugable(是否可调试),debug默认可调试,release默认不可以调试.
Name: 构建类型名称
Debugable: 是否可以调试
Jin Debuggable: Jin是否可以调试
Signing Config: 指定签名,同样是在signing中配置的,如果为空则不签名,打出来的包也是未签名过的.
Renderscript Debuggale: 是否使用渲染脚本(一种低级的高性能编程语言,用于3D渲染和处理密集型计算)
Renderscript Optim Level: Rendescript版本.
Minify Enabled: 是否混淆
Pseudo Locales Enabled: 是否支持本地化整理
Proguard File: 指定混淆文件路径
Application Id Suffix: 应用程序Id后缀
Version Name Suffix: 版本名称后缀
Zip Align Enabled: 是否支持Zip Align(字节码对齐)
新增一个构建类型:
修攺后build.gradle文件中同步修攺为:
buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile\('proguard-android.txt'\), 'proguard-rules.pro'}bbbbb {debuggable truejniDebuggable truerenderscriptDebuggable trueminifyEnabled truepseudoLocalesEnabled trueproguardFile '\/Users\/bixiaopeng\/proguard-android.txt'applicationIdSuffix '.daily'versionNameSuffix '\_0705'zipAlignEnabled true}}
如果我们指定打某个构建类型的包可以这样指定:
打出Debug的包: .\/gradlew assembleDebug
打出Release的包: .\/gradlew assembleRelease
打出Bbbbb的包: .\/gradlew assembleBbbbb
我们试着打出Bbbbb这种类型的包:
$ ./gradlew assembleBbbbb:app:preBuild UP-TO-DATE:app:preBaiduBbbbbBuild UP-TO-DATE:app:checkBaiduBbbbbManifest...:app:packageXiaomiBbbbb:app:assembleXiaomiBbbbb:app:assembleBbbbbBUILD SUCCESSFULTotal time: 25.301 secs
在app\/build\/output\/apk目录下就会打出相应的apk包.
解析apk,查看包名和版本号跟我们配置的一致.
~$ aapt d badging /Volumes/FirstApp/app/build/outputs/apk/app-baidu-bbbbb-unsigned.apkpackage: name='com.baidu.firstapp.daily' versionCode='1' versionName='1.0_0705'sdkVersion:'8'targetSdkVersion:'22'....
Project Structure中没有的配置但buildTypes中支持的属性还有很多,我们举个例子:
// 显示LogbuildConfigField "boolean", "LOG_DEBUG", "true"// 移除无用的resource文件,minifyEnabled必须为trueshrinkResources true
