apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply plugin: 'kotlin-android-extensions' android { compileSdkVersion 27 buildToolsVersion "27.0.1" defaultConfig { applicationId "com.simplemobiletools.calendar" minSdkVersion 16 targetSdkVersion 27 versionCode 103 versionName "2.11.0" multiDexEnabled true setProperty("archivesBaseName", "calendar") } signingConfigs { release } buildTypes { debug { buildConfigField "boolean", "USE_LEAK_CANARY", "true" } release { minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' signingConfig signingConfigs.release buildConfigField "boolean", "USE_LEAK_CANARY", "false" } } sourceSets { main.java.srcDirs += 'src/main/kotlin' } lintOptions { checkReleaseBuilds false abortOnError false } } ext { leakCanaryVersion = '1.5.4' } dependencies { compile 'com.simplemobiletools:commons:2.39.9' compile 'joda-time:joda-time:2.9.9' compile 'com.facebook.stetho:stetho:1.5.0' compile 'com.android.support:multidex:1.0.2' compile 'com.google.code.gson:gson:2.8.2' 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.60' 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 entries are missing' android.buildTypes.release.signingConfig = null } } else { println 'signing.properties not found' android.buildTypes.release.signingConfig = null }