apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply plugin: 'kotlin-kapt' apply plugin: 'androidx.navigation.safeargs' android { compileSdkVersion 30 buildToolsVersion "30.0.1" defaultConfig { applicationId "org.oxycblt.auxio" minSdkVersion 21 targetSdkVersion 30 versionCode 1 versionName "1.0" buildFeatures { dataBinding true } vectorDrawables.useSupportLibrary = true } buildTypes { debug { applicationIdSuffix = '.debug' versionNameSuffix = "-DEBUG" } release { minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } kotlinOptions { jvmTarget = "1.8" } compileOptions { targetCompatibility JavaVersion.VERSION_1_8 } } configurations { ktlint } dependencies { implementation fileTree(dir: "libs", include: ["*.jar"]) // Kotlin implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" // --- SUPPORT --- // General implementation 'androidx.core:core-ktx:1.3.2' implementation 'androidx.activity:activity-ktx:1.2.0-beta01' implementation 'androidx.fragment:fragment-ktx:1.3.0-beta01' // Layout implementation 'androidx.constraintlayout:constraintlayout:2.0.4' // Lifecycle implementation "androidx.lifecycle:lifecycle-extensions:2.2.0" // Viewpager implementation 'androidx.viewpager2:viewpager2:1.0.0' // Navigation def navigation_version = "2.3.1" implementation "androidx.navigation:navigation-fragment-ktx:$navigation_version" implementation "androidx.navigation:navigation-ui-ktx:$navigation_version" // Media implementation 'androidx.media:media:1.2.0' // --- THIRD PARTY --- // Image loading implementation 'io.coil-kt:coil:0.13.0' // Material implementation 'com.google.android.material:material:1.3.0-alpha03' // Lint ktlint "com.pinterest:ktlint:0.37.2" // ExoPlayer def exoplayer_version = "2.12.1" implementation "com.google.android.exoplayer:exoplayer-core:$exoplayer_version" implementation "com.google.android.exoplayer:extension-mediasession:$exoplayer_version" // Memory Leak checking debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.4' } task ktlint(type: JavaExec, group: "verification") { description = "Check Kotlin code style." main = "com.pinterest.ktlint.Main" classpath = configurations.ktlint args "src/**/*.kt" } check.dependsOn ktlint task ktlintFormat(type: JavaExec, group: "formatting") { description = "Fix Kotlin code style deviations." main = "com.pinterest.ktlint.Main" classpath = configurations.ktlint args "-F", "src/**/*.kt" }