| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179 |
- apply plugin: 'com.android.application'
- apply plugin: 'com.getkeepsafe.dexcount'
- apply plugin: 'me.tatarka.retrolambda'
- //定义时间
- def releaseTime() {
- return new Date().format("yyyyMMdd.HHmm.ss")
- }
- //设置发布的显示的版本号
- def getVersionName() {
- return rootProject.ext.android.versionName
- }
- //读取版本号
- def getVersionCode() {
- def versionFile = file('version.properties')
- if (versionFile.canRead()) {
- Properties versionProps = new Properties()
- versionProps.load(new FileInputStream(versionFile))
- def versionCode = versionProps['versionCode'].toInteger()
- def runTasks = gradle.startParameter.taskNames //仅在assembleRelease任务是增加版本号
- // if (':app:assembleRelease' in runTasks) {
- versionProps['versionCode'] = (++versionCode).toString()
- versionProps.store(versionFile.newWriter(), null)
- // }
-
- return versionCode
- } else {
- throw new GradleException("Could not find version.properties!")
- }
- }
- def currentVersionCode = getVersionCode()
- android {
- compileOptions {
- sourceCompatibility JavaVersion.VERSION_1_8
- targetCompatibility JavaVersion.VERSION_1_8
- }
- signingConfigs {
- config {
- storeFile file('C:/sigin/applicationsignname[20150409]')
- storePassword '13237658359'
- keyAlias 'jie-20150409'
- keyPassword '13237658359'
- }
- }
- compileSdkVersion rootProject.ext.android.compileSdkVersion
- buildToolsVersion rootProject.ext.android.buildToolsVersion
- defaultConfig {
-
- applicationId project.applicationId
- minSdkVersion rootProject.ext.android.minSdkVersion
- targetSdkVersion rootProject.ext.android.targetSdkVersion
- // versionCode rootProject.ext.android.versionCode
- versionCode currentVersionCode
- versionName rootProject.ext.android.versionName
- multiDexEnabled true
- signingConfig signingConfigs.config
- manifestPlaceholders = [UMENG_CHANNEL_VALUE: "umeng"]
- ndk {
- abiFilters "armeabi", "armeabi-v7a", "x86", "mips", "x86_64", "mips64"
- }
- }
- useLibrary 'org.apache.http.legacy'
- lintOptions {
- checkReleaseBuilds false
- abortOnError false
- }
- packagingOptions {
- exclude 'META-INF/LICENSE.txt'
- exclude 'META-INF/NOTICE.txt'
- }
- buildTypes {
- release {
- minifyEnabled false
- proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
- signingConfig signingConfigs.config
- }
- debug {
- signingConfig signingConfigs.config
- }
- }
- productFlavors {
- wandoujia {}
- _360 {}
- baidu {}
- xiaomi {}
- tencent {}
- taobao {}
- }
- productFlavors.all {
- flavor -> flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]
- }
- applicationVariants.all { variant ->
- variant.outputs.each { output ->
- def outputFile = output.outputFile
- def fileName
- if (outputFile != null && outputFile.name.endsWith('.apk')) {
- if (variant.buildType.name.equals('release')) {
- variant.mergedFlavor.versionName = getVersionName() + "_" + variant.productFlavors[0].name+"(Build"+currentVersionCode+")"
- fileName = "WeiChat_${variant.mergedFlavor.versionName}_release.apk"
- } else if (variant.buildType.name.equals('debug')) {
- variant.mergedFlavor.versionName = getVersionName() + "_" + releaseTime() + "_" + variant.productFlavors[0].name
- fileName = "WeiChat_${variant.mergedFlavor.versionName}_debug.apk"
- }
- output.outputFile = new File(outputFile.parent, fileName)
- }
- }
- }
- }
- dependencies {
- compile fileTree(include: ['*.jar'], dir: 'libs')
- testCompile deps.junit
- compile deps.appcompatV7
- compile deps.cardviewV7
- compile deps.design
- compile(deps.stetho) {
- force = true
- }
- compile deps.jodatime
- compile deps.systembartint
- compile deps.photoView
- compile deps.tagGroup
- compile deps.analytics
- compile deps.activityOnCrash
- compile deps.stickyListHeaders
- compile deps.stickyGridHeaders
- compile deps.materialDialogs
- compile deps.okhttp
- androidTestCompile deps.leakcanaryNp
- debugCompile deps.leakcanary
- releaseCompile deps.leakcanaryNp
- //project
- compile project(':common')
- compile project(':appmessages')
- compile project(':network')
- compile project(':imageload')
- compile project(':applogin')
- compile project(':apptasks')
- compile project(':appcontact')
- compile project(':appme')
- compile project(':appworks')
- compile project(":appbooking")
- compile project(':android-pdf-viewer')
- }
- buildscript {
- repositories {
- mavenCentral()
- }
- dependencies {
- classpath 'com.getkeepsafe.dexcount:dexcount-gradle-plugin:0.6.4'
- }
- }
- dexcount {
- format = "json"
- includeClasses = false
- includeFieldCount = true
- includeTotalMethodCount = false
- orderByMethodCount = false
- verbose = false
- maxTreeDepth = Integer.MAX_VALUE
- teamCityIntegration = false
- enableForInstantRun = false
- }
|