// Top-level build file where you can add configuration options common to all sub-projects/modules. def props = new Properties() def configPath = project.hasProperty('configPath') ? new File(project.configPath) : rootProject.file('config.prop') if (configPath.exists()) configPath.withInputStream { is -> props.load(is) } buildscript { repositories { google() jcenter() maven { url 'http://storage.googleapis.com/r8-releases/raw' } } dependencies { classpath 'com.android.tools:r8:1.4.79' classpath 'com.android.tools.build:gradle:3.3.2' classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.30' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } task clean(type: Delete) { delete rootProject.buildDir } ext { configProps = props } subprojects { repositories { google() jcenter() maven { url "https://maven.fabric.io/public" } maven { url "https://jitpack.io" } maven { url "http://oss.sonatype.org/content/repositories/snapshots" } } afterEvaluate { if (getPlugins().hasPlugin('com.android.library') || getPlugins().hasPlugin('com.android.application')) { android { compileSdkVersion 'android-Q' buildToolsVersion '29.0.0-rc2' defaultConfig { if (minSdkVersion == null) minSdkVersion 17 targetSdkVersion 28 } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } } } if (it.name == 'app' || it.name == 'stub') { android { signingConfigs { config { storeFile rootProject.file('release-key.jks') storePassword props['keyStorePass'] keyAlias props['keyAlias'] keyPassword props['keyPass'] } } buildTypes { debug { // If keystore exists, sign the APK with custom signature if (signingConfigs.config.storeFile.exists()) signingConfig signingConfigs.config } release { minifyEnabled true shrinkResources true signingConfig signingConfigs.config } } lintOptions { disable 'MissingTranslation' } } } } }