Android Studio gradle的基本用法
来源:互联网 发布:win7 桌面 网络 编辑:程序博客网 时间:2024/06/09 18:08
通过gradle进行版本控制非常方便。尤其是对debug和release的切换及多渠道打包。
defaultConfig { applicationId "xxxx" minSdkVersion 14 targetSdkVersion 19 versionCode 1 versionName "1.0.0" // 设置默认开发渠道 manifestPlaceholders = [UMENG_CHANNEL_VALUE:"default_channel"] // 设置默认非debug模式 buildConfigField("boolean", "IS_DEBUG", "false")}buildTypes { debug { // 定义一个新的常量,使用BuildConfig.API_URL引用 buildConfigField "String", "API_URL", "http://api.dev.com/" //使用BuildConfig.IS_DEBUG引用 buildConfigField "boolean", "IS_DEBUG", "true" // net_type_debug字段写在gradle.properties中 buildConfigField "int", "RELEASE_TYPE", "${net_type_debug}" // 定义一个新的res资源,string要小写,使用R.String.name引用 resValues "string", "name", "vaule" resValues "boolean", "name", "value" // 替换Manifest中的字段${UMENG_APP_KEY},${QQ_APP_ID} manifestPlaceholders = [UMENG_APP_KEY:"xxxxxxx", QQ_APP_ID:"xxxxxx"] } release { // 移除未使用的资源 shrinkResources true // 是否混淆代码 minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' buildConfigField "String", "API_URL", "http://api.prod.com/" buildConfigField "boolean", "IS_DEBUG", "false" buildConfigField "int", "RELEASE_TYPE", "${net_type_release}" resValues "string", "name", "vaule" resValues "boolean", "name", "value" manifestPlaceholders = [UMENG_APP_KEY:"xxxxxxx", QQ_APP_ID:"xxxxxx"] }}// 多渠道打包productFlavprs{ // 在此声明渠道名 C00_umeng{} C01_BaiDu{} ... productFlavors.all { flavor -> // 其中UMENG_CHANNEL_VALUE字段在Manifest中定义为${UMENG_CHANNEL_VALUE} flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name] }}// debug keystoresigningConfigs { debug { storeFile file('key/debug.keystore') }}// 这里你可以进行 Java 的版本配置,以便使用对应版本的一些新特性。compileOptions { sourceCompatibility JavaVersion.VERSION_1_7 targetCompatibility JavaVersion.VERSION_1_7}//执行lint检查,有任何的错误或者警告提示,都会终止构建,我们可以将其关掉。lintOptions { abortOnError false}// 自动解析so文件task nativeLibsToJar(type: Zip, description: "create a jar archive of the native libs") { destinationDir file("$projectDir/libs") baseName "Native_Libs2" extension "jar" from fileTree(dir: "libs", include: "**/*.so") into "lib"}tasks.withType(JavaCompile) { compileTask -> compileTask.dependsOn(nativeLibsToJar)}
buildConfigField定义的常量存在于BuildConfig类中。BuildConfig为final类。存在于build文件夹下的buildConfig
resValues定义的res资源存在于generated.xml中。位在于build文件夹下的resValues
1 0
- Android Studio gradle的基本用法
- Android Studio 的基本用法
- Gradle for Android studio 的基本认识(一)
- android studio Butterknife的基本用法
- Android Studio之基本Gradle使用
- Android Studio之基本Gradle使用
- android studio 之Gradle基本配置
- Android Studio之基本Gradle使用
- Android Studio之基本Gradle使用
- Android Studio之基本Gradle使用
- Android Studio gradle 文件中 ${supportLibVersion} 用法
- Android Studio gradle 文件中 ${supportLibVersion} 用法
- Android Studio gradle 文件中 ${supportLibVersion} 用法
- Android Studio gradle 文件中 ${supportLibVersion} 用法
- Android Studio gradle 文件中 ${supportLibVersion} 用法
- android studio的gradle问题
- android studio,gradle的问题
- Android studio的gradle配置
- MAC系统格式化后的U盘在WIN系统上不显示盘符的解决办法
- iOS 调试 crash breakpoint EXC_BAD_ACCESS SIGABRT方法总结
- 什么是java虚拟机,他又在哪里?
- Shell简介:什么是Shell,Shell命令的两种执行方式
- 几种常见的Shell
- Android Studio gradle的基本用法
- spark transform系列__join
- 什么时候使用Shell
- uploadify多文件上传
- Win 10 下 android studio显示 Intel haxm无法安装,以及VT-X和hyper-x的冲突问题
- poj 1308 Is It A Tree?
- 第一个Shell脚本
- android shape的使用详解以及常用效果(渐变色、分割线、边框、半透明阴影效果等)
- mongdb mapreduce 排查 map reduce