import org.apache.tools.ant.filters.ConcatFilter plugins { id 'com.android.application' id 'kotlin-android' id 'kotlin-android-extensions' id 'com.google.secrets_gradle_plugin' version '0.5' } android { compileSdkVersion 30 defaultConfig { applicationId "com.example.kotlindemos" minSdkVersion 16 targetSdkVersion 30 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" multiDexEnabled true } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } flavorDimensions "version" productFlavors { gms { dimension "version" applicationIdSuffix ".gms" versionNameSuffix "-gms" } v3 { dimension "version" applicationIdSuffix ".v3" versionNameSuffix "-v3" } } } dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'androidx.appcompat:appcompat:1.2.0' implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" implementation "androidx.cardview:cardview:1.0.0" implementation "androidx.recyclerview:recyclerview:1.2.0" implementation 'androidx.multidex:multidex:2.0.1' // GMS gmsImplementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.3.1' gmsImplementation 'com.google.android.gms:play-services-maps:17.0.0' gmsImplementation 'com.google.maps.android:maps-ktx:3.0.0' // V3 v3Implementation 'com.google.android.libraries.maps:maps:3.1.0-beta' // Below is used to run the easypermissions library to manage location permissions // EasyPermissions is needed to help us request for permission to access location implementation 'pub.devrel:easypermissions:3.0.0' // Tests testImplementation 'junit:junit:4.13.2' androidTestImplementation 'androidx.test.ext:junit:1.1.2' androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' } task generateV3(type: Copy) { group "V3 Beta" description "Copies source code from GMS to V3 BETA." from 'src/gms/java' into 'src/v3/java' filter { line -> line.replace('com.google.android.gms.maps', 'com.google.android.libraries.maps') } filter(ConcatFilter, prepend: file('../../V3_FILE_HEADER')) } task generateV3Layout(type: Copy) { group "V3 Beta" description "Copies layout files from GMS to V3 BETA." from 'src/gms/res/layout' into 'src/v3/res/layout' filter { line -> line.replace('com.google.android.gms.maps', 'com.google.android.libraries.maps') } } secrets { // To add your Maps API key to this project: // 1. Open the root project's local.properties file // 2. Add this line, where YOUR_API_KEY is your API key: // MAPS_API_KEY=YOUR_API_KEY defaultPropertiesFileName 'local.defaults.properties' }