Android Studio裡面的Build.gradle的詳細配置說明
阿新 • • 發佈:2019-02-04
apply plugin: 'com.android.application'//說明module的型別,com.android.application為程式,com.android.library為庫 android { compileSdkVersion 22//編譯的SDK版本 buildToolsVersion "22.0.1"//編譯的Tools版本 defaultConfig {//預設配置 applicationId "com.nd.famlink"//應用程式的包名 minSdkVersion 8//支援的最低版本 targetSdkVersion 19//支援的目標版本 versionCode 52//版本號 versionName "3.0.1"//版本名 manifestPlaceholders = [ UMENG_CHANNEL_VALUE:"hsq" ]//宣告友盟渠道名是可變的 } sourceSets {//目錄指向配置 main { manifest.srcFile 'AndroidManifest.xml'//指定AndroidManifest檔案 java.srcDirs = ['src']//指定source目錄 resources.srcDirs = ['src']//指定source目錄 aidl.srcDirs = ['src']//指定source目錄 renderscript.srcDirs = ['src']//指定source目錄 res.srcDirs = ['res']//指定資源目錄 assets.srcDirs = ['assets']//指定assets目錄 jniLibs.srcDirs = ['libs']//指定lib庫目錄 } debug.setRoot('build-types/debug')//指定debug模式的路徑 release.setRoot('build-types/release')//指定release模式的路徑 } signingConfigs {//簽名配置 release {//釋出版簽名配置 storeFile file("fk.keystore")//金鑰檔案路徑 storePassword "123"//金鑰檔案密碼 keyAlias "fk"//key別名 keyPassword "123"//key密碼 } debug {//debug版簽名配置 storeFile file("fk.keystore") storePassword "123" keyAlias "fk" keyPassword "123" } } buildTypes {//build型別 release {//釋出 minifyEnabled true//混淆開啟 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt'//指定混淆規則檔案 signingConfig signingConfigs.release//設定簽名信息 } debug {//除錯 signingConfig signingConfigs.release } } packagingOptions { exclude 'META-INF/ASL2.0' exclude 'META-INF/LICENSE' exclude 'META-INF/NOTICE' exclude 'META-INF/MANIFEST.MF' } lintOptions { abortOnError false//lint時候終止錯誤上報,防止編譯的時候莫名的失敗 } //打包-渠道 productFlavors { hsq{} hsq_dx{} hsq_wx{} baidu{} yingyongbao{} ppzhushou{} anzhi{} zhushou360{} huawei{} lenovomm{} wandoujia{} mumayi{} meizu{} youyi{} sougou{} } //打包-防渠道程式碼重複處理 productFlavors.all { flavor -> flavor.manifestPlaceholders = [ UMENG_CHANNEL_VALUE:name ] } } dependencies {//依賴 compile fileTree(dir: 'libs', exclude: ['android-support*.jar'], include: ['*.jar']) //編譯lib目錄下的.jar檔案 compile project(':Easylink')//編譯附加的專案 compile project(':ImageLibrary') compile project(':ImageResLibrary') compile project(':Ofdmtransport') compile project(':PullToRefreshLibrary') compile project(':RecorderLibrary') compile project(':WebSocket') compile project(':WidgetLibrary') compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.3'//編譯來自Jcenter的第三方開源庫 }