mirror of https://github.com/tuskyapp/Tusky.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
160 lines
4.1 KiB
160 lines
4.1 KiB
apply plugin: 'com.android.application' |
|
apply plugin: 'kotlin-android' |
|
apply plugin: 'kotlin-kapt' |
|
apply plugin: 'kotlin-parcelize' |
|
|
|
apply from: "../instance-build.gradle" |
|
|
|
def getGitSha = { |
|
def stdout = new ByteArrayOutputStream() |
|
try { |
|
exec { |
|
commandLine 'git', 'rev-parse', '--short', 'HEAD' |
|
standardOutput = stdout |
|
} |
|
} catch (Exception e) { |
|
return "unknown" |
|
} |
|
return stdout.toString().trim() |
|
} |
|
|
|
android { |
|
compileSdkVersion 33 |
|
defaultConfig { |
|
applicationId APP_ID |
|
namespace "com.keylesspalace.tusky" |
|
minSdkVersion 23 |
|
targetSdkVersion 33 |
|
versionCode 100 |
|
versionName "21.0" |
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" |
|
vectorDrawables.useSupportLibrary = true |
|
|
|
resValue "string", "app_name", APP_NAME |
|
|
|
buildConfigField("String", "CUSTOM_LOGO_URL", "\"$CUSTOM_LOGO_URL\"") |
|
buildConfigField("String", "CUSTOM_INSTANCE", "\"$CUSTOM_INSTANCE\"") |
|
buildConfigField("String", "SUPPORT_ACCOUNT_URL", "\"$SUPPORT_ACCOUNT_URL\"") |
|
|
|
kapt { |
|
arguments { |
|
arg("room.schemaLocation", "$projectDir/schemas") |
|
} |
|
} |
|
} |
|
buildTypes { |
|
release { |
|
minifyEnabled true |
|
shrinkResources true |
|
proguardFiles 'proguard-rules.pro' |
|
} |
|
debug {} |
|
} |
|
|
|
flavorDimensions "color" |
|
productFlavors { |
|
blue {} |
|
green { |
|
resValue "string", "app_name", APP_NAME + " Test" |
|
applicationIdSuffix ".test" |
|
versionNameSuffix "-" + getGitSha() |
|
} |
|
} |
|
|
|
lintOptions { |
|
disable 'MissingTranslation' |
|
} |
|
buildFeatures { |
|
viewBinding true |
|
} |
|
testOptions { |
|
unitTests { |
|
returnDefaultValues = true |
|
includeAndroidResources = true |
|
} |
|
unitTests.all { |
|
systemProperty 'robolectric.logging.enabled', 'true' |
|
} |
|
} |
|
sourceSets { |
|
androidTest.assets.srcDirs += files("$projectDir/schemas".toString()) |
|
} |
|
|
|
packagingOptions { |
|
// Exclude unneeded files added by libraries |
|
exclude 'LICENSE_OFL' |
|
exclude 'LICENSE_UNICODE' |
|
} |
|
bundle { |
|
language { |
|
// bundle all languages in every apk so the dynamic language switching works |
|
enableSplit = false |
|
} |
|
} |
|
dependenciesInfo { |
|
includeInApk false |
|
includeInBundle false |
|
} |
|
} |
|
|
|
// library versions are in PROJECT_ROOT/gradle/libs.versions.toml |
|
dependencies { |
|
implementation libs.kotlinx.coroutines.android |
|
implementation libs.kotlinx.coroutines.rx3 |
|
|
|
implementation libs.bundles.androidx |
|
implementation libs.bundles.room |
|
kapt libs.androidx.room.compiler |
|
|
|
implementation libs.android.material |
|
|
|
implementation libs.gson |
|
|
|
implementation libs.bundles.retrofit |
|
implementation libs.networkresult.calladapter |
|
|
|
implementation libs.bundles.okhttp |
|
|
|
implementation libs.conscrypt.android |
|
|
|
implementation libs.bundles.glide |
|
kapt libs.glide.compiler |
|
|
|
implementation libs.bundles.rxjava3 |
|
|
|
implementation libs.bundles.autodispose |
|
|
|
implementation libs.bundles.dagger |
|
kapt libs.bundles.dagger.processors |
|
|
|
implementation libs.sparkbutton |
|
|
|
implementation libs.photoview |
|
|
|
implementation libs.bundles.material.drawer |
|
implementation libs.material.typeface, { |
|
artifact { |
|
type = "aar" |
|
} |
|
} |
|
|
|
implementation libs.image.cropper |
|
|
|
implementation libs.bundles.filemojicompat |
|
|
|
implementation libs.bouncycastle |
|
implementation libs.unified.push |
|
|
|
testImplementation libs.androidx.test.junit |
|
testImplementation libs.robolectric |
|
testImplementation libs.bundles.mockito |
|
testImplementation libs.mockwebserver |
|
testImplementation libs.androidx.core.testing |
|
testImplementation libs.kotlinx.coroutines.test |
|
testImplementation libs.androidx.work.testing |
|
|
|
androidTestImplementation libs.espresso.core |
|
androidTestImplementation libs.androidx.room.testing |
|
androidTestImplementation libs.androidx.test.junit |
|
|
|
}
|
|
|