1
0
Fork 0
mirror of https://github.com/anyproto/anytype-kotlin.git synced 2025-06-08 05:47:05 +09:00
anytype-kotlin/app/build.gradle
2020-03-10 17:41:25 +03:00

144 lines
No EOL
4.8 KiB
Groovy

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'
apply plugin: "androidx.navigation.safeargs.kotlin"
apply plugin: 'io.fabric'
apply from: "$rootDir/versioning.gradle"
android {
def config = rootProject.extensions.getByName("ext")
compileSdkVersion config["compile_sdk"]
buildToolsVersion config["build_tools"]
defaultConfig {
applicationId config["application_id"]
minSdkVersion config["min_sdk"]
targetSdkVersion config["target_sdk"]
versionCode getBuildVersionCode()
versionName getBuildVersionName()
testInstrumentationRunner config["test_runner"]
}
packagingOptions {
exclude 'LICENSE.txt'
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/ASL2.0'
exclude 'META-INF/NOTICE'
exclude 'META-INF/LICENSE'
}
lintOptions {
quiet true
abortOnError false
ignoreWarnings true
disable 'InvalidPackage' //Some libraries have issues with this.
disable 'OldTargetApi' //Lint gives this warning but SDK 20 would be Android L Beta.
disable 'IconDensities' //For testing purpose. This is safe to remove.
disable 'IconMissingDensityFolder' //For testing purpose. This is safe to remove.
}
buildTypes {
release {
minifyEnabled false
useProguard false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
debug {
debuggable true
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = "1.8"
}
androidExtensions {
experimental = true
}
}
ext {
android_compat_version = '1.0.0-beta01'
}
dependencies {
implementation project(':domain')
implementation project(':data')
implementation project(':device')
implementation project(':persistence')
implementation project(':middleware')
implementation project(':presentation')
implementation project(':core-utils')
implementation project(':core-ui')
implementation project(':library-kanban-widget')
implementation project(':library-page-icon-picker-widget')
implementation project(':library-emojifier')
def applicationDependencies = rootProject.ext.mainApplication
def unitTestDependencies = rootProject.ext.unitTesting
def acceptanceTesting = rootProject.ext.acceptanceTesting
def devDependencies = rootProject.ext.development
def databaseDependencies = rootProject.ext.db
//Compile time dependencies
kapt applicationDependencies.daggerCompiler
kapt applicationDependencies.glideCompiler
compileOnly applicationDependencies.javaxAnnotation
compileOnly applicationDependencies.javaxInject
//Application dependencies
implementation applicationDependencies.kotlin
implementation applicationDependencies.coroutines
implementation applicationDependencies.navigation
implementation applicationDependencies.navigationUi
implementation applicationDependencies.appcompat
implementation applicationDependencies.design
implementation applicationDependencies.recyclerView
implementation applicationDependencies.constraintLayout
implementation applicationDependencies.glide
implementation applicationDependencies.dagger
implementation applicationDependencies.timber
implementation applicationDependencies.gson
implementation applicationDependencies.rxRelay
implementation applicationDependencies.tableView
implementation applicationDependencies.viewModel
implementation applicationDependencies.viewModelExtensions
implementation databaseDependencies.room
implementation applicationDependencies.crashlytics
implementation applicationDependencies.firebaseCore
implementation devDependencies.stetho
//Unit/Integration tests dependencies
testImplementation unitTestDependencies.junit
testImplementation unitTestDependencies.robolectric
//Acceptance tests dependencies
androidTestImplementation acceptanceTesting.mockitoAndroid
androidTestImplementation unitTestDependencies.mockitoKotlin
androidTestImplementation acceptanceTesting.espressoCore
androidTestImplementation acceptanceTesting.espressoContrib
androidTestImplementation acceptanceTesting.androidJUnit
androidTestImplementation acceptanceTesting.testRules
androidTestImplementation acceptanceTesting.disableAnimation
androidTestImplementation unitTestDependencies.coroutineTesting
debugImplementation acceptanceTesting.fragmentTesting
}
apply plugin: 'com.google.gms.google-services'