forked from upstream-mirrors/OpenTracks
3f600f6be7
Fixes #1392.
145 lines
4.1 KiB
Groovy
145 lines
4.1 KiB
Groovy
apply plugin: 'com.android.application'
|
|
|
|
buildscript {
|
|
repositories {
|
|
google()
|
|
mavenCentral()
|
|
}
|
|
dependencies {
|
|
classpath 'com.android.tools.build:gradle:7.4.2'
|
|
}
|
|
}
|
|
|
|
allprojects {
|
|
repositories {
|
|
google()
|
|
mavenCentral()
|
|
}
|
|
}
|
|
|
|
def getVersionName = { ->
|
|
try {
|
|
def stdout = new ByteArrayOutputStream()
|
|
exec {
|
|
commandLine 'git', 'describe', '--tags'
|
|
standardOutput = stdout
|
|
}
|
|
return stdout.toString().trim()
|
|
} catch (ignored) {
|
|
return null
|
|
}
|
|
}
|
|
|
|
def getVersionCode = { ->
|
|
try {
|
|
def stdout = new ByteArrayOutputStream()
|
|
exec {
|
|
commandLine 'git', 'rev-list', 'HEAD', '--count'
|
|
standardOutput = stdout
|
|
}
|
|
return Integer.valueOf(stdout.toString().trim())
|
|
} catch (ignored) {
|
|
return null
|
|
}
|
|
}
|
|
|
|
android {
|
|
compileOptions {
|
|
coreLibraryDesugaringEnabled true
|
|
|
|
sourceCompatibility JavaVersion.VERSION_11
|
|
targetCompatibility JavaVersion.VERSION_11
|
|
}
|
|
|
|
compileSdk 33
|
|
|
|
buildFeatures {
|
|
viewBinding true
|
|
}
|
|
|
|
defaultConfig {
|
|
applicationId "de.dennisguse.opentracks"
|
|
versionCode 5151
|
|
versionName "v4.3.0"
|
|
|
|
buildConfigField "String", "VERSION_NAME_FULL", "\"${getVersionName()}\""
|
|
|
|
minSdk 21
|
|
targetSdk 33
|
|
|
|
testInstrumentationRunner "de.dennisguse.opentracks.TestRunner"
|
|
testInstrumentationRunnerArguments clearPackageData: 'true'
|
|
|
|
resConfigs "ar", "bg", "ca", "cs", "da", "de", "el", "en", "es", "et", "eu", "fa", "fi", "fr", "ga", "gl", "hi", "hr", "hu", "in", "it", "iw", "ja", "ko", "lt", "lv", "mo", "ms", "nb", "nl", "pl", "pt", "ro", "ru", "sk", "sl", "sr", "sv", "th", "tl", "tr", "uk", "vi", "zh"
|
|
}
|
|
signingConfigs {
|
|
nightly {
|
|
if (System.getProperty("nightly_store_file") != null) {
|
|
storeFile file(System.getProperty("nightly_store_file"))
|
|
storePassword System.getProperty("nightly_store_password")
|
|
keyAlias System.getProperty("nightly_key_alias")
|
|
keyPassword System.getProperty("nightly_key_password")
|
|
}
|
|
}
|
|
}
|
|
|
|
namespace 'de.dennisguse.opentracks'
|
|
|
|
buildTypes {
|
|
debug {
|
|
applicationIdSuffix ".debug"
|
|
versionNameSuffix "-debug"
|
|
}
|
|
|
|
nightly {
|
|
signingConfig signingConfigs.nightly
|
|
applicationIdSuffix ".nightly"
|
|
}
|
|
|
|
release {
|
|
crunchPngs false
|
|
minifyEnabled false
|
|
}
|
|
|
|
releasePlayStore {
|
|
applicationIdSuffix ".playstore"
|
|
versionNameSuffix "-PlayStore"
|
|
signingConfig signingConfigs.debug
|
|
}
|
|
}
|
|
|
|
applicationVariants.all { variant ->
|
|
variant.resValue "string", "applicationId", variant.applicationId
|
|
|
|
if (variant.buildType.name == 'nightly') {
|
|
variant.outputs.all {
|
|
setVersionCodeOverride(getVersionCode())
|
|
setVersionNameOverride(getVersionName())
|
|
outputFileName = "${applicationId}_${variant.versionCode}.apk"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.0.3'
|
|
|
|
implementation 'androidx.appcompat:appcompat:1.6.1'
|
|
implementation 'androidx.preference:preference:1.2.0'
|
|
implementation 'androidx.documentfile:documentfile:1.0.1'
|
|
implementation 'androidx.gridlayout:gridlayout:1.0.0'
|
|
implementation 'com.google.android.material:material:1.8.0'
|
|
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
|
|
implementation 'androidx.core:core-splashscreen:1.0.0'
|
|
implementation 'androidx.mediarouter:mediarouter:1.3.1'
|
|
|
|
androidTestImplementation 'androidx.test:core:1.5.0'
|
|
androidTestImplementation 'androidx.test.ext:junit:1.1.5'
|
|
androidTestImplementation 'androidx.test:rules:1.5.0'
|
|
androidTestImplementation 'androidx.test:runner:1.5.2'
|
|
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'
|
|
androidTestImplementation 'org.mockito:mockito-android:5.2.0'
|
|
|
|
androidTestUtil 'androidx.test:orchestrator:1.4.2'
|
|
}
|