VancedMicroG/play-services-core/build.gradle

166 lines
5.5 KiB
Groovy

/*
* Copyright 2013-2019 microG Project Team
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'
configurations {
withMapboxImplementation
withVtmImplementation
withNearbyImplementation
withoutNearbyImplementation
}
dependencies {
implementation "com.squareup.wire:wire-runtime:$wireVersion"
implementation "de.hdodenhof:circleimageview:1.3.0"
// TODO: Switch to upstream once raw requests are merged
// https://github.com/vitalidze/chromecast-java-api-v2/pull/99
// implementation "su.litvak.chromecast:api-v2:0.10.4"
implementation "info.armills.chromecast-java-api-v2:api-v2-raw-request:0.10.4-raw-request-1"
// Specified manually due to
// https://github.com/vitalidze/chromecast-java-api-v2/issues/91
api "org.slf4j:slf4j-api:1.7.25"
api "uk.uuid.slf4j:slf4j-android:1.7.25-1"
implementation project(':firebase-dynamic-links-api')
implementation project(':firebase-auth-core')
implementation project(':play-services-base-core')
implementation project(':play-services-base-core-ui')
implementation project(':play-services-conscrypt-provider-core')
implementation project(':play-services-cronet-core')
implementation project(':play-services-droidguard-core')
implementation project(':play-services-droidguard-core-ui')
implementation project(':play-services-location-core')
withNearbyImplementation project(':play-services-nearby-core')
withNearbyImplementation project(':play-services-nearby-core-ui')
implementation project(':play-services-safetynet-core')
implementation project(':play-services-safetynet-core-ui')
implementation project(':play-services-tapandpay-core')
implementation project(':play-services-vision-core')
implementation project(':play-services-core-proto')
implementation project(':play-services-core:microg-ui-tools') // deprecated
implementation project(':play-services-api')
implementation project(':play-services-cast-api')
implementation project(':play-services-wearable')
implementation "org.microg:wearable:$wearableVersion"
runtimeOnly "org.microg.nlp:geocode-v1:$nlpVersion"
runtimeOnly "org.microg.nlp:location-v2:$nlpVersion"
runtimeOnly "org.microg.nlp:location-v3:$nlpVersion"
implementation "org.microg.nlp:ui:$nlpVersion"
withMapboxImplementation project(':play-services-maps-core-mapbox')
withVtmImplementation project(':play-services-maps-core-vtm')
// AndroidX UI
implementation "androidx.multidex:multidex:$multidexVersion"
implementation "androidx.appcompat:appcompat:$appcompatVersion"
implementation "androidx.mediarouter:mediarouter:$mediarouterVersion"
implementation "androidx.preference:preference-ktx:$preferenceVersion"
implementation "androidx.webkit:webkit:$webkitVersion"
// Navigation
implementation "androidx.navigation:navigation-fragment-ktx:$navigationVersion"
implementation "androidx.navigation:navigation-ui-ktx:$navigationVersion"
implementation "com.android.volley:volley:$volleyVersion"
implementation "androidx.lifecycle:lifecycle-service:$lifecycleVersion"
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlinVersion"
}
android {
compileSdkVersion androidCompileSdk()
buildToolsVersion "$androidBuildVersionTools"
defaultConfig {
versionName version
versionCode appVersionCode
minSdkVersion androidMinSdk
targetSdkVersion androidTargetSdk
multiDexEnabled true
multiDexKeepProguard file('multidex-keep.pro')
ndk {
abiFilters "armeabi", "armeabi-v7a", "arm64-v8a", "x86", "x86_64"
}
}
buildFeatures {
dataBinding = true
}
sourceSets {
main {
java.srcDirs += 'src/main/kotlin'
}
withNearby {
java.srcDirs += 'src/withNearby/kotlin'
}
withoutNearby {
java.srcDirs += 'src/withoutNearby/kotlin'
}
}
lintOptions {
disable 'MissingTranslation', 'InvalidPackage', 'BatteryLife', 'ImpliedQuantity', 'MissingQuantity', 'InvalidWakeLockTag'
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
flavorDimensions 'maps', 'nearby'
productFlavors {
withMapbox {
dimension 'maps'
}
withVtm {
dimension 'maps'
versionNameSuffix '-vtm'
}
withNearby {
dimension 'nearby'
}
withoutNearby {
dimension 'nearby'
versionNameSuffix '-noen'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
packagingOptions {
exclude 'META-INF/ASL2.0'
}
}
if (file('user.gradle').exists()) {
apply from: 'user.gradle'
}