aprsdroid/build.gradle

174 wiersze
4.6 KiB
Groovy

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
maven { url 'https://jitpack.io' }
mavenCentral()
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.5.1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
// grgit for version tags
classpath 'org.ajoberstar:grgit:1.1.0'
// https://github.com/Triple-T/gradle-play-publisher#usage
classpath 'com.github.triplet.gradle:play-publisher:2.4.1'
// scala build
classpath 'com.github.AllBus:gradle-android-scala-plugin:3.5.1'
}
}
plugins {
// obtain revision from git
id 'org.ajoberstar.grgit' version '1.6.0'
// gradle-amazon-app-store-publisher
id "app.brant.amazonappstorepublisher" version "0.1.0"
}
allprojects {
repositories {
google()
jcenter()
}
}
/////////////// APRSdroid specific build rules ///////////////
apply plugin: 'com.android.application'
apply plugin: 'jp.leafytree.android-scala'
apply plugin: 'com.github.triplet.play'
ext {
build_date = "${new Date().format('yyyy-MM-dd')}"
build_revision = "${grgit.describe()}"
build_version = "APRSdroid ${build_revision} ${build_date}"
}
tasks.withType(ScalaCompile) {
// Suppress deprecation warnings
scalaCompileOptions.deprecation = false
}
def versionCodeDate() {
if (project.hasProperty("RELEASE_MINOR")) {
return new Date().format("yyyyMMdd" + RELEASE_MINOR).toInteger()
} else {
return new Date().format("yyyyMMdd00").toInteger()
}
}
def mapsApiKey() {
Properties properties = new Properties()
try {
properties.load(project.rootProject.file('local.properties').newDataInputStream())
} catch(Exception ex) {}
// the default google_maps_key is restricted to ge0rg's signing keys and can't be used by other builds!
properties.getProperty('mapsApiKey', "AIzaSyA12R_iI_upYQ33FWnPU_8GlMKrEmjDxiQ")
}
amazon {
securityProfile = file("amazon-publish-credentials.json")
applicationId = "amzn1.devportal.mobileapp.90ffde1571a347f8a100e1083c64812e"
pathToApks = [ file("build/outputs/apk/release/aprsdroid-release.apk") ]
replaceEdit = true
}
android {
compileSdkVersion 33
buildToolsVersion "33.0.2"
defaultConfig {
minSdkVersion 14
targetSdkVersion 33
versionName "$build_revision"
versionCode versionCodeDate()
resValue "string", "build_revision", "$build_revision"
resValue "string", "build_date", "$build_date"
resValue "string", "build_version", "$build_version"
resValue "string", "google_maps_key", mapsApiKey()
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
useLibrary 'org.apache.http.legacy'
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
buildTypes {
debug {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard.cfg'
}
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard.cfg'
}
}
if (project.hasProperty("RELEASE_KEY_ALIAS")) {
signingConfigs {
release {
storeFile file(RELEASE_STORE_FILE)
storePassword RELEASE_STORE_PASSWORD
keyAlias RELEASE_KEY_ALIAS
keyPassword RELEASE_KEY_PASSWORD
}
}
buildTypes {
release {
signingConfig signingConfigs.release
}
}
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
// some gradle-android-scala-plugin versions don't know scala.* properties
// if it breaks, just remove the following two lines:
//scala.srcDirs = ['src']
//scala.excludes = ["*.sw?"]
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
jniLibs.srcDirs = ['libs']
}
androidTest {
java.srcDirs = ['androidTest/java']
}
test {
java.srcDirs = ['test/java']
}
}
lintOptions {
disable 'MissingTranslation'
disable 'InvalidPackage'
}
}
play {
serviceAccountCredentials = file('play-publish-credentials.json')
track = 'beta'
}
dependencies {
implementation "org.scala-lang:scala-library:2.11.12"
//compile 'com.google.android.gms:play-services-maps:6.5.87'
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.google.android.gms:play-services-maps:17.0.0'
implementation 'com.google.maps.android:android-maps-utils:0.5'
implementation 'androidx.core:core:1.6.0'
implementation 'com.squareup.okio:okio:2.1.0'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
testImplementation 'junit:junit:4.12'
}