Simple-Calendar/app/build.gradle
Tibor Kaputa 84e6a779ed Merge pull request #202 from jonathan-caryl/leak_canary
Add LeakCanary for debug versions of the app
2017-08-12 22:59:10 +02:00

97 lines
3.2 KiB
Groovy

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
defaultConfig {
applicationId "com.simplemobiletools.calendar"
minSdkVersion 16
targetSdkVersion 25
versionCode 87
versionName "2.6.1"
multiDexEnabled true
}
signingConfigs {
release
debug
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release
}
debug {
signingConfig signingConfigs.debug
}
}
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
debug.java.srcDirs += 'src/debug/kotlin'
release.java.srcDirs += 'src/release/kotlin'
}
}
ext {
leakCanaryVersion = '1.5.2'
}
dependencies {
compile 'com.simplemobiletools:commons:2.25.3'
compile 'joda-time:joda-time:2.9.1'
compile 'com.facebook.stetho:stetho:1.4.1'
compile 'com.bignerdranch.android:recyclerview-multiselect:0.2'
compile 'com.android.support:multidex:1.0.1'
compile 'com.google.code.gson:gson:2.8.0'
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
debugCompile "com.squareup.leakcanary:leakcanary-android:$leakCanaryVersion"
releaseCompile "com.squareup.leakcanary:leakcanary-android-no-op:$leakCanaryVersion"
}
buildscript {
ext.kotlin_version = '1.1.3-2'
repositories {
mavenCentral()
}
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"
}
}
def Properties props = new Properties()
def propFile = new File('signing.properties')
if (propFile.canRead()) {
props.load(new FileInputStream(propFile))
if (props != null && props.containsKey('STORE_FILE') && props.containsKey('KEY_ALIAS') && props.containsKey('PASSWORD')) {
android.signingConfigs.release.storeFile = file(props['STORE_FILE'])
android.signingConfigs.release.storePassword = props['PASSWORD']
android.signingConfigs.release.keyAlias = props['KEY_ALIAS']
android.signingConfigs.release.keyPassword = props['PASSWORD']
} else {
println 'signing.properties found but some release entries are missing'
android.buildTypes.release.signingConfig = null
}
if (props != null && props.containsKey('DEBUG_STORE_FILE') && props.containsKey('DEBUG_KEY_ALIAS') && props.containsKey('DEBUG_PASSWORD')) {
android.signingConfigs.debug.storeFile = file(props['DEBUG_STORE_FILE'])
android.signingConfigs.debug.storePassword = props['DEBUG_PASSWORD']
android.signingConfigs.debug.keyAlias = props['DEBUG_KEY_ALIAS']
android.signingConfigs.debug.keyPassword = props['DEBUG_PASSWORD']
} else {
println 'signing.properties found but some debug entries are missing'
android.buildTypes.debug.signingConfig = null
}
} else {
println 'signing.properties not found'
android.buildTypes.release.signingConfig = null
android.buildTypes.debug.signingConfig = null
}