apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply plugin: 'com.github.triplet.play' play { jsonFile = file('../files/gplay-keys.json') track = 'beta' errorOnSizeLimit = true uploadImages = false untrackOld = true } android { compileSdkVersion kau.targetSdk buildToolsVersion kau.buildTools androidGitVersion { codeFormat = 'MMNNPPXX' format = '%tag%%.count%%-commit%' } defaultConfig { applicationId "ca.allanwang.kau.sample" minSdkVersion kau.minSdk targetSdkVersion kau.targetSdk versionName androidGitVersion.name() versionCode androidGitVersion.code() multiDexEnabled true testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } def releaseSigning = file("../files/kau.properties") def hasSigning = releaseSigning.exists() signingConfigs { if (hasSigning) { def releaseProps = new Properties() releaseSigning.withInputStream { releaseProps.load(it) } release { storeFile file("../files/kau.keystore") storePassword releaseProps.getProperty('storePassword') keyAlias releaseProps.getProperty('keyAlias') keyPassword releaseProps.getProperty('keyPassword') } } debug { storeFile file("../files/debug.keystore") storePassword "debugKey" keyAlias "debugKey" keyPassword "debugKey" } } buildTypes { debug { minifyEnabled false shrinkResources false applicationIdSuffix ".debug" versionNameSuffix "-debug" signingConfig signingConfigs.debug resValue "string", "app_name", "KAU Debug" } release { minifyEnabled true if (hasSigning) signingConfig signingConfigs.release resValue "string", "app_name", "KAU" proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } lintOptions { abortOnError false checkReleaseBuilds false } packagingOptions { pickFirst 'META-INF/core_release.kotlin_module' pickFirst 'META-INF/library_release.kotlin_module' } sourceSets { main.java.srcDirs += 'src/main/kotlin' test.java.srcDirs += 'src/test/kotlin' androidTest.java.srcDirs += 'src/androidTest/kotlin' main.res.srcDirs += 'src/main/res-public' } testOptions.unitTests { // Don't throw runtime exceptions for android calls that are not mocked returnDefaultValues = true // Always show the result of every unit test, even if it passes. all { testLogging { events 'passed', 'skipped', 'failed', 'standardOut', 'standardError' } } } } dependencies { implementation project(':about') implementation project(':adapter') implementation project(':colorpicker') implementation project(':core') implementation project(':core-ui') implementation project(':kpref-activity') implementation project(':searchview') implementation project(':mediapicker') // androidTestImplementation("com.android.support.test.espresso:espresso-core:${kau.espresso}") { // exclude group: 'com.android.support', module: 'support-annotations' // } // androidTestImplementation("com.android.support.test:runner:${kau.testRunner}") { // exclude group: 'com.android.support', module: 'support-annotations' // } // androidTestImplementation kauDependency.kotlinTest testImplementation kauDependency.kotlinTest testImplementation kauDependency.junit androidTestImplementation kauDependency.kotlinTest androidTestImplementation kauDependency.espresso androidTestImplementation kauDependency.testRunner }