2021-01-10 10:11:04 +00:00
|
|
|
plugins {
|
|
|
|
id("com.android.application")
|
|
|
|
kotlin("android")
|
|
|
|
kotlin("kapt")
|
|
|
|
id("com.google.gms.google-services")
|
|
|
|
id("com.google.firebase.crashlytics")
|
|
|
|
id("com.google.firebase.firebase-perf")
|
|
|
|
id("androidx.navigation.safeargs.kotlin")
|
2021-02-03 18:24:28 +00:00
|
|
|
id("kotlin-android")
|
2021-01-10 10:11:04 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
android {
|
|
|
|
compileSdkVersion(30)
|
|
|
|
|
|
|
|
defaultConfig {
|
|
|
|
applicationId = "com.vanced.manager"
|
|
|
|
minSdkVersion(21)
|
|
|
|
targetSdkVersion(30)
|
2021-04-13 10:47:06 +00:00
|
|
|
versionCode = 260
|
|
|
|
versionName = "2.6.0 (Crimson)"
|
2021-01-10 10:11:04 +00:00
|
|
|
|
|
|
|
vectorDrawables.useSupportLibrary = true
|
|
|
|
|
2021-02-23 15:33:23 +00:00
|
|
|
buildConfigField("String[]", "MANAGER_LANGUAGES", "{$languages}")
|
2021-01-10 10:11:04 +00:00
|
|
|
buildConfigField("Boolean", "ENABLE_CROWDIN_AUTH", "false")
|
|
|
|
buildConfigField("String", "CROWDIN_HASH", "\"${System.getenv("CROWDIN_HASH")}\"")
|
|
|
|
buildConfigField("String", "CROWDIN_CLIENT_ID", "\"${System.getenv("CROWDIN_CLIENT_ID")}\"")
|
|
|
|
buildConfigField("String", "CROWDIN_CLIENT_SECRET", "\"${System.getenv("CROWDIN_CLIENT_SECRET")}\"")
|
|
|
|
}
|
|
|
|
|
|
|
|
lintOptions {
|
|
|
|
disable("MissingTranslation", "ExtraTranslation")
|
|
|
|
}
|
|
|
|
|
|
|
|
applicationVariants.all {
|
|
|
|
resValue("string", "versionName", versionName)
|
|
|
|
}
|
|
|
|
|
|
|
|
buildTypes {
|
|
|
|
getByName("release") {
|
|
|
|
isMinifyEnabled = true
|
|
|
|
proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro")
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
buildFeatures {
|
|
|
|
viewBinding = true
|
2021-02-19 13:51:34 +00:00
|
|
|
//compose = true
|
2021-01-10 10:11:04 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
packagingOptions {
|
|
|
|
exclude("META-INF/DEPENDENCIES")
|
|
|
|
exclude("META-INF/*.kotlin_module")
|
|
|
|
}
|
|
|
|
|
|
|
|
// To inline the bytecode built with JVM target 1.8 into
|
|
|
|
// bytecode that is being built with JVM target 1.6. (e.g. navArgs)
|
|
|
|
|
|
|
|
compileOptions {
|
|
|
|
sourceCompatibility = JavaVersion.VERSION_1_8
|
|
|
|
targetCompatibility = JavaVersion.VERSION_1_8
|
|
|
|
}
|
|
|
|
|
|
|
|
tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile> {
|
|
|
|
kotlinOptions {
|
|
|
|
jvmTarget = "1.8"
|
2021-02-19 13:51:34 +00:00
|
|
|
//useIR = true
|
2021-01-10 10:11:04 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
2021-02-23 15:33:23 +00:00
|
|
|
val languages: String get() {
|
2021-01-15 19:08:19 +00:00
|
|
|
val langs = arrayListOf("en", "bn_BD", "bn_IN", "pa_IN", "pa_PK", "pt_BR", "pt_PT", "zh_CN", "zh_TW")
|
|
|
|
val exceptions = arrayOf("bn", "pa", "pt", "zh")
|
2021-01-10 10:11:04 +00:00
|
|
|
|
2021-02-23 15:33:23 +00:00
|
|
|
File("$projectDir/src/main/res").listFiles()?.filter {
|
|
|
|
val name = it.name
|
|
|
|
name.startsWith("values-") && !name.contains("v23")
|
|
|
|
}?.forEach { dir ->
|
|
|
|
val dirname = dir.name.substringAfter("-").substringBefore("-")
|
2021-02-23 15:34:48 +00:00
|
|
|
if (!exceptions.contains(dirname)) {
|
2021-02-23 15:33:23 +00:00
|
|
|
langs.add(dirname)
|
2021-01-10 10:11:04 +00:00
|
|
|
}
|
|
|
|
}
|
2021-01-10 12:11:29 +00:00
|
|
|
return langs.joinToString(", ") { "\"$it\"" }
|
2021-01-10 10:11:04 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
dependencies {
|
|
|
|
|
2021-02-19 13:51:34 +00:00
|
|
|
//val composeVersion = "1.0.0-alpha12"
|
2021-01-10 10:11:04 +00:00
|
|
|
implementation(project(":core-presentation"))
|
|
|
|
implementation(project(":core-ui"))
|
|
|
|
|
|
|
|
implementation(project(":library-network"))
|
|
|
|
|
2021-02-15 13:19:51 +00:00
|
|
|
// Kotlin
|
2021-01-10 10:11:04 +00:00
|
|
|
implementation(kotlin("stdlib-jdk8"))
|
|
|
|
implementation(kotlin("reflect"))
|
|
|
|
|
2021-02-15 13:19:51 +00:00
|
|
|
// AndroidX
|
2021-01-10 10:11:04 +00:00
|
|
|
implementation("androidx.appcompat:appcompat:1.2.0")
|
|
|
|
implementation("androidx.browser:browser:1.3.0")
|
|
|
|
implementation("androidx.constraintlayout:constraintlayout:2.0.4")
|
|
|
|
implementation("androidx.core:core-ktx:1.3.2")
|
2021-04-27 12:20:06 +00:00
|
|
|
implementation("androidx.fragment:fragment-ktx:1.3.3")
|
2021-04-13 10:45:38 +00:00
|
|
|
implementation("androidx.lifecycle:lifecycle-livedata-core-ktx:2.3.1")
|
|
|
|
implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1")
|
2021-01-10 10:11:04 +00:00
|
|
|
implementation("androidx.localbroadcastmanager:localbroadcastmanager:1.0.0")
|
2021-04-13 10:45:38 +00:00
|
|
|
implementation("androidx.navigation:navigation-fragment-ktx:2.3.5")
|
|
|
|
implementation("androidx.navigation:navigation-ui-ktx:2.3.5")
|
2021-01-15 18:27:17 +00:00
|
|
|
implementation("androidx.preference:preference-ktx:1.1.1")
|
2021-01-10 10:11:04 +00:00
|
|
|
implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.1.0")
|
|
|
|
|
2021-02-19 13:51:34 +00:00
|
|
|
|
|
|
|
// Compose
|
|
|
|
// implementation("androidx.compose.ui:ui:$composeVersion")
|
|
|
|
// implementation("androidx.compose.ui:ui-tooling:$composeVersion")
|
|
|
|
// implementation("androidx.compose.foundation:foundation:$composeVersion")
|
|
|
|
// implementation("androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha02")
|
|
|
|
// implementation("androidx.compose.material:material:$composeVersion")
|
|
|
|
// implementation("androidx.compose.material:material-icons-core:$composeVersion")
|
|
|
|
// implementation("androidx.compose.material:material-icons-extended:$composeVersion")
|
|
|
|
// implementation("androidx.compose.runtime:runtime-livedata:$composeVersion")
|
|
|
|
|
2021-02-15 13:19:51 +00:00
|
|
|
// Appearance
|
2021-01-10 10:11:04 +00:00
|
|
|
implementation("com.github.madrapps:pikolo:2.0.1")
|
2021-02-13 11:03:47 +00:00
|
|
|
implementation("com.google.android.material:material:1.3.0")
|
2021-01-10 10:11:04 +00:00
|
|
|
|
2021-02-15 13:19:51 +00:00
|
|
|
// JSON parser
|
2021-04-13 10:45:38 +00:00
|
|
|
implementation("com.beust:klaxon:5.5")
|
2021-01-10 10:11:04 +00:00
|
|
|
|
|
|
|
// Crowdin
|
2021-02-23 16:00:07 +00:00
|
|
|
implementation("com.github.crowdin.mobile-sdk-android:sdk:1.4.0")
|
2021-01-10 10:11:04 +00:00
|
|
|
|
|
|
|
// HTTP networking
|
2021-04-13 10:45:38 +00:00
|
|
|
implementation("com.github.kittinunf.fuel:fuel:2.3.1")
|
|
|
|
implementation("com.github.kittinunf.fuel:fuel-coroutines:2.3.1")
|
|
|
|
implementation("com.github.kittinunf.fuel:fuel-json:2.3.1")
|
2021-02-05 10:00:06 +00:00
|
|
|
implementation("com.squareup.okhttp3:logging-interceptor:4.9.1")
|
2021-02-23 16:00:07 +00:00
|
|
|
implementation("com.squareup.retrofit2:retrofit:2.9.0")
|
2021-01-10 10:11:04 +00:00
|
|
|
|
|
|
|
// Root permissions
|
2021-04-13 10:45:38 +00:00
|
|
|
implementation("com.github.topjohnwu.libsu:core:3.1.2")
|
|
|
|
implementation("com.github.topjohnwu.libsu:io:3.1.2")
|
2021-01-10 10:11:04 +00:00
|
|
|
|
|
|
|
// Layout
|
|
|
|
implementation("com.google.android:flexbox:2.0.1")
|
|
|
|
|
|
|
|
// Firebase
|
2021-04-13 10:45:38 +00:00
|
|
|
implementation("com.google.firebase:firebase-analytics-ktx:18.0.3")
|
|
|
|
implementation("com.google.firebase:firebase-crashlytics:17.4.1")
|
|
|
|
implementation("com.google.firebase:firebase-messaging:21.1.0")
|
2021-02-13 11:03:47 +00:00
|
|
|
implementation("com.google.firebase:firebase-perf:19.1.1")
|
2021-01-10 10:11:04 +00:00
|
|
|
}
|