2019-11-06 21:22:23 +08:00
|
|
|
import com.android.build.gradle.api.AndroidSourceSet
|
|
|
|
|
2019-10-30 23:00:29 +08:00
|
|
|
plugins {
|
|
|
|
id("kotlinx-atomicfu")
|
|
|
|
kotlin("multiplatform")
|
2019-11-06 21:22:23 +08:00
|
|
|
id("com.android.library")
|
2019-10-30 23:00:29 +08:00
|
|
|
//id("kotlin-android-extensions")
|
|
|
|
}
|
|
|
|
|
|
|
|
val kotlinVersion = rootProject.ext["kotlin_version"].toString()
|
|
|
|
val atomicFuVersion = rootProject.ext["atomicfu_version"].toString()
|
|
|
|
val coroutinesVersion = rootProject.ext["coroutines_version"].toString()
|
|
|
|
val kotlinXIoVersion = rootProject.ext["kotlinxio_version"].toString()
|
|
|
|
val coroutinesIoVersion = rootProject.ext["coroutinesio_version"].toString()
|
|
|
|
|
|
|
|
val klockVersion = rootProject.ext["klock_version"].toString()
|
|
|
|
val ktorVersion = rootProject.ext["ktor_version"].toString()
|
|
|
|
|
2019-11-06 21:22:23 +08:00
|
|
|
kotlin {
|
|
|
|
android("android") {
|
|
|
|
project.plugins.apply("com.android.library")
|
|
|
|
|
|
|
|
project.android {
|
|
|
|
compileSdkVersion(29)
|
|
|
|
buildToolsVersion("29.0.2")
|
|
|
|
defaultConfig {
|
|
|
|
minSdkVersion(15)
|
|
|
|
targetSdkVersion(29)
|
|
|
|
versionCode = 1
|
|
|
|
versionName = "1.0"
|
|
|
|
// testInstrumentationRunner = "android.support.test.runner.AndroidJUnitRunner"
|
|
|
|
}
|
|
|
|
|
|
|
|
buildTypes {
|
|
|
|
getByName("release") {
|
|
|
|
isMinifyEnabled = false
|
|
|
|
//proguardFiles(getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro")
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
sourceSets.filterIsInstance(com.android.build.gradle.api.AndroidSourceSet::class.java).forEach {
|
|
|
|
it.manifest.srcFile("src/androidMain/res/AndroidManifest.xml")
|
|
|
|
it.res.srcDirs(file("src/androidMain/res"))
|
|
|
|
}
|
|
|
|
|
|
|
|
(sourceSets["main"] as AndroidSourceSet).java.srcDirs(file("src/androidMain/kotlin"))
|
2019-10-30 23:00:29 +08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
jvm("jvm")
|
|
|
|
|
2019-11-06 21:22:23 +08:00
|
|
|
val commonMain = sourceSets["commonMain"].apply {
|
2019-10-30 23:00:29 +08:00
|
|
|
dependencies {
|
2019-11-06 21:22:23 +08:00
|
|
|
api("org.jetbrains.kotlin:kotlin-reflect:$kotlinVersion")
|
2019-10-30 23:00:29 +08:00
|
|
|
implementation("com.soywiz.korlibs.klock:klock:$klockVersion")
|
|
|
|
|
2019-11-06 21:22:23 +08:00
|
|
|
implementation("io.ktor:ktor-http-cio:$ktorVersion")
|
|
|
|
implementation("io.ktor:ktor-http:$ktorVersion")
|
|
|
|
implementation("io.ktor:ktor-client-core-jvm:$ktorVersion")
|
|
|
|
implementation("io.ktor:ktor-client-cio:$ktorVersion")
|
2019-10-30 23:00:29 +08:00
|
|
|
|
2019-11-06 21:22:23 +08:00
|
|
|
implementation("io.ktor:ktor-client-core:$ktorVersion")
|
|
|
|
implementation("io.ktor:ktor-network:$ktorVersion")
|
2019-10-30 23:00:29 +08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
sourceSets["androidMain"].apply {
|
|
|
|
dependencies {
|
2019-11-06 21:22:23 +08:00
|
|
|
dependsOn(commonMain)
|
2019-10-30 23:00:29 +08:00
|
|
|
implementation("org.jetbrains.kotlin:kotlin-reflect:$kotlinVersion")
|
|
|
|
|
2019-10-31 23:11:55 +08:00
|
|
|
implementation("io.ktor:ktor-client-android:$ktorVersion")
|
2019-10-30 23:00:29 +08:00
|
|
|
|
|
|
|
}
|
|
|
|
languageSettings.enableLanguageFeature("InlineClasses")
|
2019-11-06 21:22:23 +08:00
|
|
|
}
|
2019-10-30 23:00:29 +08:00
|
|
|
|
|
|
|
sourceSets["jvmMain"].apply {
|
|
|
|
dependencies {
|
2019-11-06 21:22:23 +08:00
|
|
|
dependsOn(commonMain)
|
2019-10-30 23:00:29 +08:00
|
|
|
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
|
|
|
|
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk7")
|
|
|
|
|
|
|
|
implementation("org.jetbrains.kotlin:kotlin-reflect:$kotlinVersion")
|
|
|
|
|
|
|
|
implementation("io.ktor:ktor-client-core-jvm:$ktorVersion")
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2019-10-31 23:11:55 +08:00
|
|
|
sourceSets["jvmTest"].apply {
|
|
|
|
kotlin.setSrcDirs(listOf("src/$name/kotlin"))
|
|
|
|
}
|
|
|
|
|
2019-11-06 21:22:23 +08:00
|
|
|
sourceSets.all {
|
|
|
|
languageSettings.enableLanguageFeature("InlineClasses")
|
2019-10-30 23:00:29 +08:00
|
|
|
|
2019-11-06 21:22:23 +08:00
|
|
|
dependencies {
|
2019-10-30 23:00:29 +08:00
|
|
|
implementation("org.jetbrains.kotlin:kotlin-stdlib")
|
|
|
|
implementation("org.jetbrains.kotlinx:atomicfu:$atomicFuVersion")
|
|
|
|
implementation("org.jetbrains.kotlinx:kotlinx-io:$kotlinXIoVersion")
|
|
|
|
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-io:$coroutinesIoVersion")
|
|
|
|
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutinesVersion")
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|