191 lines
6.9 KiB
Groovy
191 lines
6.9 KiB
Groovy
plugins {
|
|
id 'com.android.application'
|
|
}
|
|
|
|
android {
|
|
compileSdkVersion 31
|
|
buildToolsVersion "30.0.3"
|
|
packagingOptions {
|
|
exclude 'META-INF/LICENSE.txt'
|
|
exclude 'META-INF/NOTICE.txt'
|
|
}
|
|
defaultConfig {
|
|
applicationId "eu.csc.vehown"
|
|
minSdkVersion 26
|
|
targetSdkVersion 31
|
|
versionCode 1
|
|
versionName "1.0"
|
|
multiDexEnabled true
|
|
|
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
|
|
|
javaCompileOptions {
|
|
annotationProcessorOptions {
|
|
arguments += [
|
|
"room.schemaLocation":"$projectDir/schemas".toString(),
|
|
//The following options were not recognized by any processor
|
|
// "room.incremental":"true",
|
|
// "room.expandProjection":"true"
|
|
]
|
|
}
|
|
}
|
|
}
|
|
testOptions {
|
|
|
|
// Encapsulates options for local unit tests.
|
|
unitTests {
|
|
// By default, local unit tests throw an exception any time the code you are testing tries to access
|
|
// Android platform APIs (unless you mock Android dependencies yourself or with a testing
|
|
// framework like Mockito). However, you can enable the following property so that the test
|
|
// returns either null or zero when accessing platform APIs, rather than throwing an exception.
|
|
returnDefaultValues true
|
|
|
|
// Encapsulates options for controlling how Gradle executes local unit tests. For a list
|
|
// of all the options you can specify, read Gradle's reference documentation.
|
|
all {
|
|
// Sets JVM argument(s) for the test JVM(s).
|
|
jvmArgs '-XX:MaxPermSize=256m'
|
|
|
|
// You can also check the task name to apply options to only the tests you specify.
|
|
if (it.name == 'testDebugUnitTest') {
|
|
systemProperty 'debug', 'true'
|
|
}
|
|
|
|
}
|
|
}
|
|
}
|
|
testOptions {
|
|
unitTests.includeAndroidResources = true
|
|
}
|
|
buildTypes {
|
|
release {
|
|
minifyEnabled false
|
|
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
|
}
|
|
}
|
|
compileOptions {
|
|
sourceCompatibility JavaVersion.VERSION_1_8
|
|
targetCompatibility JavaVersion.VERSION_1_8
|
|
}
|
|
buildFeatures {
|
|
viewBinding true
|
|
}
|
|
|
|
|
|
}
|
|
|
|
repositories {
|
|
mavenLocal()
|
|
}
|
|
|
|
dependencies {
|
|
|
|
implementation 'androidx.appcompat:appcompat:1.3.0'
|
|
implementation 'com.google.android.material:material:1.3.0'
|
|
implementation 'androidx.annotation:annotation:1.2.0'
|
|
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
|
|
implementation 'androidx.lifecycle:lifecycle-livedata-ktx:2.3.1'
|
|
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1'
|
|
implementation 'androidx.navigation:navigation-fragment:2.3.5'
|
|
implementation 'androidx.navigation:navigation-ui:2.3.5'
|
|
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
|
|
implementation 'androidx.recyclerview:recyclerview:1.2.1'
|
|
implementation 'androidx.preference:preference:1.2.0'
|
|
compileOnly "org.projectlombok:lombok:$lombok_Version"
|
|
//implementation 'eu.csc.odpconfigurationserver:dto:1.0-SNAPSHOT'
|
|
|
|
testImplementation 'junit:junit:4.13.2'
|
|
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
|
|
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
|
|
|
|
//Lombok
|
|
implementation "org.projectlombok:lombok:$lombok_Version"
|
|
annotationProcessor "org.projectlombok:lombok:$lombok_Version"
|
|
androidTestImplementation "org.projectlombok:lombok:$lombok_Version"
|
|
testAnnotationProcessor "org.projectlombok:lombok:$lombok_Version"
|
|
|
|
//room
|
|
implementation 'android.arch.persistence.room:runtime:1.1.1'
|
|
annotationProcessor 'android.arch.persistence.room:compiler:1.1.1'
|
|
|
|
//implementation project(":module:EventReportModule")
|
|
//Retrofit
|
|
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
|
|
implementation 'com.squareup.retrofit2:converter-gson:2.5.0'
|
|
implementation 'io.reactivex.rxjava2:rxandroid:2.0.2'
|
|
implementation 'io.reactivex.rxjava2:rxjava:2.2.9'
|
|
implementation 'com.squareup.retrofit2:adapter-rxjava2:2.4.0'
|
|
|
|
//MQTT
|
|
implementation 'com.rabbitmq:amqp-client:5.12.0'
|
|
|
|
//compile files('libs/org.eclipse.paho.android.service-1.1.1.jar')
|
|
// compile files('libs/org.eclipse.paho.client.mqttv3-1.1.1.jar')
|
|
implementation 'com.android.support:multidex:1.0.3'
|
|
|
|
//implementation fileTree(dir: 'libs', include: '*.jar')
|
|
implementation "eu.csc.core:coregtdm:$coregtdm_version" //was 1.0-SNAPSHOT
|
|
implementation files('../libs/log4j-1.2.17.jar')
|
|
implementation files('../libs/AppVehOwnServerClient.jar')
|
|
implementation files('../libs/AppVehOwnServerDto.jar')
|
|
|
|
implementation project(":services:core")
|
|
implementation project(":services:localstorage")
|
|
}
|
|
|
|
task copyServerClientFromLocalDisc{
|
|
doLast{
|
|
println('START copyServerClientFromLocalDisc:')
|
|
|
|
|
|
|
|
println('END copyServerClientFromLocalDisc:')
|
|
}
|
|
}
|
|
|
|
|
|
task uploadPersonalConfigsBundle {
|
|
doLast {
|
|
println('uploadPersonalConfigBundle:')
|
|
def id = '12345679'
|
|
def personalization = 'none'
|
|
def customization = 'none'
|
|
def locales = 'en_GB,de_DE'
|
|
def device = 'R58MC0YPL0B' // Smartphone-PCTL
|
|
def andDest = '/sdcard/Android/data/eu.csc.vehown/files/1';
|
|
def adb = 'D:/Dev/Android/sdk/platform-tools/adb.exe'
|
|
def localMavenRepo = new File(System.getProperty('user.home'), '.m2/repository').absolutePath
|
|
|
|
//copy configuration files
|
|
def openxavaConfigDir = "D:/Dev/Tools/openxava/data/config/"
|
|
def dest = 'D:/Dev/project/VehicleOwner/app/config'
|
|
delete fileTree(dir: dest, include: '*')
|
|
println(' from ' + openxavaConfigDir)
|
|
println(' to ' + dest)
|
|
copy { from openxavaConfigDir into dest include 'obd-ii*.*gtdfsys' }
|
|
copy { from openxavaConfigDir into dest include 'itsstation*.*gtdfsys' }
|
|
|
|
//create configBundle file
|
|
dest = projectDir.getAbsolutePath() + '/config/configBundle'
|
|
def jarfile = localMavenRepo + '/eu/csc/core/coregtdm/1.0/coregtdm-1.0.jar'
|
|
println(' create ConfigBundle(' + id + ', ' + personalization + ', ' + customization + ', ' + locales + ')')
|
|
println(' in ' + dest)
|
|
exec {
|
|
commandLine 'java', '-cp', jarfile, 'eu.csc.gtdm.ConfigBundle', id, personalization, customization, locales, dest
|
|
}
|
|
|
|
//upload
|
|
def source = projectDir.getAbsolutePath() + '/config'
|
|
println(' to ' + andDest)
|
|
exec {
|
|
executable adb
|
|
args('-s', device, 'shell', 'rm', '-f', andDest + '/config/*')
|
|
}
|
|
exec {
|
|
executable adb
|
|
args('-s', device, 'push', source, andDest)
|
|
}
|
|
}
|
|
}
|
|
|