1+ import org.jetbrains.kotlin.gradle.dsl.JvmTarget
2+ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
3+
14plugins {
25 id ' com.android.application'
36 id ' kotlin-android'
@@ -12,7 +15,7 @@ plugins {
1215
1316android {
1417 compileSdk = 36
15- buildToolsVersion = ' 35 .0.0'
18+ buildToolsVersion = ' 36 .0.0'
1619 namespace = ' org.dokiteam.doki'
1720
1821 defaultConfig {
@@ -49,7 +52,7 @@ android {
4952 def tgKey = System . getProperty(" tg_backup_bot_token" )
5053 ?: localProperties. getProperty(" tg_backup_bot_token" , " " )
5154 resValue ' string' , ' tg_backup_bot_token' , tgKey
52- }
55+ }
5356 signingConfigs {
5457 DokiApp {
5558 storeFile file(" sign.p12" )
@@ -88,35 +91,18 @@ android {
8891 ' META-INF/NOTICE.md'
8992 ]
9093 }
94+ jniLibs {
95+ useLegacyPackaging = true
96+ }
9197 }
9298 sourceSets {
9399 androidTest. assets. srcDirs + = files(" $projectDir /schemas" . toString())
94100 main. java. srcDirs + = ' src/main/kotlin/'
95101 }
96102 compileOptions {
97103 coreLibraryDesugaringEnabled true
98- sourceCompatibility JavaVersion . VERSION_11
99- targetCompatibility JavaVersion . VERSION_11
100- }
101- kotlinOptions {
102- jvmTarget = JavaVersion . VERSION_11 . toString()
103- freeCompilerArgs + = [
104- ' -opt-in=kotlin.ExperimentalStdlibApi' ,
105- ' -opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi' ,
106- ' -opt-in=kotlinx.coroutines.ExperimentalForInheritanceCoroutinesApi' ,
107- ' -opt-in=kotlinx.coroutines.InternalForInheritanceCoroutinesApi' ,
108- ' -opt-in=kotlinx.coroutines.FlowPreview' ,
109- ' -opt-in=kotlin.contracts.ExperimentalContracts' ,
110- ' -opt-in=coil3.annotation.ExperimentalCoilApi' ,
111- ' -opt-in=coil3.annotation.InternalCoilApi' ,
112- ' -opt-in=kotlinx.serialization.ExperimentalSerializationApi' ,
113- ' -Xjspecify-annotations=strict' ,
114- ' -Xannotation-default-target=first-only' ,
115- ' -Xtype-enhancement-improvements-strict-mode'
116- ]
117- }
118- room {
119- schemaDirectory " $projectDir /schemas"
104+ sourceCompatibility JavaVersion . VERSION_17
105+ targetCompatibility JavaVersion . VERSION_17
120106 }
121107 lint {
122108 checkReleaseBuilds false
@@ -126,9 +112,6 @@ android {
126112 testOptions {
127113 unitTests. includeAndroidResources true
128114 unitTests. returnDefaultValues false
129- kotlinOptions {
130- freeCompilerArgs + = [' -opt-in=org.dokiteam.doki.parsers.InternalParsersApi' ]
131- }
132115 }
133116 applicationVariants. configureEach { variant ->
134117 def now = LocalDateTime . now()
@@ -145,6 +128,33 @@ android {
145128 }
146129 }
147130}
131+ kotlin {
132+ compilerOptions {
133+ jvmTarget = JvmTarget . JVM_17
134+ freeCompilerArgs. addAll([
135+ ' -opt-in=kotlin.ExperimentalStdlibApi' ,
136+ ' -opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi' ,
137+ ' -opt-in=kotlinx.coroutines.ExperimentalForInheritanceCoroutinesApi' ,
138+ ' -opt-in=kotlinx.coroutines.InternalForInheritanceCoroutinesApi' ,
139+ ' -opt-in=kotlinx.coroutines.FlowPreview' ,
140+ ' -opt-in=kotlin.contracts.ExperimentalContracts' ,
141+ ' -opt-in=coil3.annotation.ExperimentalCoilApi' ,
142+ ' -opt-in=coil3.annotation.InternalCoilApi' ,
143+ ' -opt-in=kotlinx.serialization.ExperimentalSerializationApi' ,
144+ ' -Xjspecify-annotations=strict' ,
145+ ' -Xannotation-default-target=first-only' ,
146+ ' -Xtype-enhancement-improvements-strict-mode'
147+ ])
148+ room {
149+ schemaDirectory " $projectDir /schemas"
150+ }
151+ }
152+ }
153+ tasks. withType(KotlinCompile ). configureEach {
154+ compilerOptions {
155+ freeCompilerArgs. add(' -opt-in=org.dokiteam.doki.parsers.InternalParsersApi' )
156+ }
157+ }
148158dependencies {
149159 def exts = libs. versions. exts. get()
150160 if (System . properties. containsKey(' exts' )) {
0 commit comments