import java.text.SimpleDateFormat apply plugin: 'com.android.application' apply plugin: 'kotlin-android' // apply plugin: 'kotlin-android-extensions' android { compileOptions { sourceCompatibility JavaVersion.VERSION_1_7 targetCompatibility JavaVersion.VERSION_1_7 } compileSdkVersion target_sdk_version defaultConfig { targetSdkVersion target_sdk_version minSdkVersion min_sdk_version versionCode 300 versionName "3.0.0" applicationId "jp.juggler.subwaytooter" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" // https://stackoverflow.com/questions/47791227/java-lang-illegalstateexception-dex-archives-setting-dex-extension-only-for multiDexEnabled true } buildTypes { release { minifyEnabled false shrinkResources false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' lintOptions { disable 'MissingTranslation' } } } // Specifies comma-separated list of flavor dimensions. flavorDimensions "rcOrDev" productFlavors { rc { dimension "rcOrDev" } } dexOptions { jumboMode = true } // Generate Signed APK のファイル名を変更 android.applicationVariants.all { variant -> if (variant.buildType.name == "release") { variant.outputs.all { // Rename APK def versionCode = defaultConfig.versionCode def versionName = defaultConfig.versionName def flavor = variant.flavorName def date = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date()) outputFileName = "../../SubwayTooter-${flavor}-${versionCode}-${versionName}-${date}.apk" } } } } dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations' }) implementation project(':exif') implementation project(':colorpicker') implementation project(':emoji') implementation project(':apng_android') implementation "com.android.support:support-v4:$asl_version" implementation "com.android.support:appcompat-v7:$asl_version" implementation "com.android.support:design:$asl_version" implementation "com.android.support:customtabs:$asl_version" implementation "com.android.support:support-v13:$asl_version" // https://firebase.google.com/support/release-notes/android implementation "com.google.firebase:firebase-core:16.0.3" implementation "com.google.firebase:firebase-messaging:17.3.2" implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" implementation "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version" testImplementation "org.jetbrains.kotlin:kotlin-test:$kotlin_version" implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:$kotlinx_coroutines_version" implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$kotlinx_coroutines_version" // Anko Layouts // sdk15, sdk19, sdk21, sdk23 are also available implementation "org.jetbrains.anko:anko-sdk25:$anko_version" implementation "org.jetbrains.anko:anko-appcompat-v7:$anko_version" // Coroutine listeners for Anko Layouts //implementation "org.jetbrains.anko:anko-sdk25-coroutines:$anko_version" //implementation "org.jetbrains.anko:anko-appcompat-v7-coroutines:$anko_version" testImplementation 'junit:junit:4.12' // しばらくはkotlin-testとjunitを併用 implementation 'com.squareup.okhttp3:okhttp:3.11.0' testImplementation 'com.squareup.okhttp3:mockwebserver:3.11.0' androidTestImplementation 'com.squareup.okhttp3:mockwebserver:3.11.0' // glide 4.8.0 は CustomTarget がないので保留 implementation 'com.github.bumptech.glide:glide:4.7.1' implementation 'com.github.bumptech.glide:okhttp3-integration:4.7.1' implementation 'com.github.bumptech.glide:annotations:4.7.1' kapt 'com.github.bumptech.glide:compiler:4.7.1' // kotlin では annotationProcessor の代わりに kapt を使う implementation 'uk.co.chrisjenx:calligraphy:2.3.0' implementation 'com.github.woxthebox:draglistview:1.5.4' implementation 'com.github.omadahealth:swipy:1.2.3@aar' implementation 'com.github.kenglxn.QRGen:android:2.4.0' implementation 'commons-io:commons-io:2.6' implementation 'org.hjson:hjson:3.0.0' implementation 'com.google.android:flexbox:1.0.0' // 1.1.0 から AndroidX 依存 implementation 'com.astuetz:pagerslidingtabstrip:1.0.1' // exoplayer 2.9.0 は Java 8 compiler support を要求する implementation 'com.google.android.exoplayer:exoplayer:2.8.4' // implementation 'com.simplecityapps:recyclerview-fastscroll:1.0.16' implementation 'me.drakeet.support:toastcompat:1.0.2' } repositories { mavenCentral() } apply plugin: 'kotlin-kapt' apply plugin: 'com.google.gms.google-services'