109 lines
3.2 KiB
Groovy
109 lines
3.2 KiB
Groovy
plugins {
|
|
id 'com.android.application'
|
|
id 'kotlin-android'
|
|
}
|
|
|
|
applyCommonAndroidParameters(project)
|
|
applyCrashlyticsIfRelease(project)
|
|
|
|
android {
|
|
ndkVersion "25.0.8141415"
|
|
defaultConfig {
|
|
applicationId "app.dapk.st"
|
|
def versionJson = new groovy.json.JsonSlurper().parseText(rootProject.file('version.json').text)
|
|
versionCode versionJson.code
|
|
versionName versionJson.name
|
|
|
|
if (isDebugBuild) {
|
|
resConfigs "en", "xxhdpi"
|
|
} else {
|
|
resConfigs "en"
|
|
}
|
|
|
|
if (isFoss()) {
|
|
archivesBaseName = "$archivesBaseName-foss"
|
|
}
|
|
}
|
|
|
|
bundle {
|
|
abi.enableSplit true
|
|
density.enableSplit true
|
|
language.enableSplit true
|
|
}
|
|
|
|
buildTypes {
|
|
debug {
|
|
versionNameSuffix = " [debug]"
|
|
matchingFallbacks = ['release']
|
|
signingConfig.storeFile rootProject.file("tools/debug.keystore")
|
|
}
|
|
release {
|
|
minifyEnabled true
|
|
shrinkResources true
|
|
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'),
|
|
'proguard/app.pro',
|
|
"proguard/serializationx.pro",
|
|
"proguard/olm.pro"
|
|
|
|
if (project.hasProperty("unsigned")) {
|
|
// releases are signed externally
|
|
} else {
|
|
signingConfig = buildTypes.debug.signingConfig
|
|
}
|
|
}
|
|
}
|
|
|
|
compileOptions {
|
|
coreLibraryDesugaringEnabled true
|
|
}
|
|
|
|
packagingOptions {
|
|
resources.excludes += "DebugProbesKt.bin"
|
|
}
|
|
}
|
|
|
|
if (isDebugBuild) {
|
|
androidComponents {
|
|
def release = selector().withBuildType("release")
|
|
beforeVariants(release) { it.enabled = false }
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
coreLibraryDesugaring Dependencies.google.jdkLibs
|
|
|
|
implementation project(":features:home")
|
|
implementation project(":features:directory")
|
|
implementation project(":features:login")
|
|
implementation project(":features:settings")
|
|
implementation project(":features:notifications")
|
|
implementation project(":features:messenger")
|
|
implementation project(":features:profile")
|
|
implementation project(":features:navigator")
|
|
implementation project(":features:share-entry")
|
|
|
|
implementation project(":domains:android:compose-core")
|
|
implementation project(":domains:android:core")
|
|
implementation project(":domains:android:tracking")
|
|
implementation project(":domains:android:push")
|
|
implementation project(":domains:android:work")
|
|
implementation project(":domains:android:imageloader")
|
|
implementation project(":domains:store")
|
|
|
|
firebase(it, "messaging")
|
|
|
|
implementation project(":core")
|
|
|
|
implementation "chat-engine:chat-engine"
|
|
implementation "chat-engine:matrix-chat-engine"
|
|
implementation "chat-engine.matrix:store"
|
|
|
|
implementation Dependencies.google.androidxComposeUi
|
|
implementation Dependencies.mavenCentral.ktorAndroid
|
|
implementation Dependencies.mavenCentral.sqldelightAndroid
|
|
implementation Dependencies.mavenCentral.matrixOlm
|
|
|
|
implementation Dependencies.mavenCentral.kotlinSerializationJson
|
|
debugImplementation Dependencies.mavenCentral.leakCanary
|
|
}
|