Android Studio项目中Build.gradlle配置详解

来源:互联网 发布:淘宝美工用哪个ps软件 编辑:程序博客网 时间:2024/06/06 14:29

许多对gradlle不了解的宝宝们总是会在配置的过程中遇到一系列的问题,大体都是对gradlle不够了解。所以在此详细说明gradlle中每一项的用处,如下

  1. apply plugin: 'com.android.application'//说明module的类型,com.android.application为程序,com.android.library为库    2. android {    3.     compileSdkVersion 22//编译的SDK版本    4.     buildToolsVersion "22.0.1"//编译的Tools版本    5.     defaultConfig {//默认配置    6.         applicationId "com.nd.famlink"//应用程序的包名    7.         minSdkVersion 8//支持的最低版本    8.         targetSdkVersion 19//支持的目标版本    9.         versionCode 52//版本号    10.         versionName "3.0.1"//版本名    11.         manifestPlaceholders = [ UMENG_CHANNEL_VALUE:"hsq" ]//声明友盟渠道名是可变的    12.     }    13.     sourceSets {//目录指向配置    14.         main {    15.             manifest.srcFile 'AndroidManifest.xml'//指定AndroidManifest文件    16.             java.srcDirs = ['src']//指定source目录    17.             resources.srcDirs = ['src']//指定source目录    18.             aidl.srcDirs = ['src']//指定source目录    19.             renderscript.srcDirs = ['src']//指定source目录    20.             res.srcDirs = ['res']//指定资源目录    21.             assets.srcDirs = ['assets']//指定assets目录    22.             jniLibs.srcDirs = ['libs']//指定lib库目录    23.         }    24.         debug.setRoot('build-types/debug')//指定debug模式的路径    25.         release.setRoot('build-types/release')//指定release模式的路径    26.     }    27.     signingConfigs {//签名配置    28.         release {//发布版签名配置    29.             storeFile file("fk.keystore")//密钥文件路径    30.             storePassword "123"//密钥文件密码    31.             keyAlias "fk"//key别名    32.             keyPassword "123"//key密码    33.         }    34.         debug {//debug版签名配置    35.             storeFile file("fk.keystore")    36.             storePassword "123"    37.             keyAlias "fk"    38.             keyPassword "123"    39.         }    40.     }    41.     42.     buildTypes {//build类型    43.         release {//发布    44.             minifyEnabled true//混淆开启    45.             proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt'//指定混淆规则文件    46.             signingConfig signingConfigs.release//设置签名信息    47.         }    48.         debug {//调试    49.             signingConfig signingConfigs.release    50.         }    51.     }    52.     packagingOptions {    53.         exclude 'META-INF/ASL2.0'    54.         exclude 'META-INF/LICENSE'    55.         exclude 'META-INF/NOTICE'    56.         exclude 'META-INF/MANIFEST.MF'    57.     }    58.     59.     lintOptions {    60.         abortOnError false//lint时候终止错误上报,防止编译的时候莫名的失败    61.     }    62.         63.     //打包-渠道    64.     productFlavors {    65.         hsq{}    66.         hsq_dx{}    67.         hsq_wx{}    68.         baidu{}    69.         yingyongbao{}    70.         ppzhushou{}    71.         anzhi{}    72.         zhushou360{}    73.         huawei{}    74.         lenovomm{}    75.         wandoujia{}    76.         mumayi{}    77.         meizu{}    78.         youyi{}    79.         sougou{}    80.     }    81.         82.     //打包-防渠道代码重复处理    83.     productFlavors.all { flavor ->    84.         flavor.manifestPlaceholders = [ UMENG_CHANNEL_VALUE:name ]    85.     }    86. }    87.     88. dependencies {//依赖    89.     compile fileTree(dir: 'libs', exclude: ['android-support*.jar'], include: ['*.jar'])   //编译lib目录下的.jar文件    90.     compile project(':Easylink')//编译附加的项目    91.     compile project(':ImageLibrary')    92.     compile project(':ImageResLibrary')    93.     compile project(':Ofdmtransport')    94.     compile project(':PullToRefreshLibrary')    95.     compile project(':RecorderLibrary')    96.     compile project(':WebSocket')    97.     compile project(':WidgetLibrary')    98.     compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.3'//编译来自Jcenter的第三方开源库  

至此,就是gradlle的配置详解了,给个好评吧~