2017-08-02 07:39:38 -06:00
|
|
|
apply plugin: 'com.android.application'
|
|
|
|
|
|
|
|
android {
|
2021-04-15 11:10:01 -06:00
|
|
|
compileSdkVersion 30
|
2021-03-10 11:41:39 -07:00
|
|
|
buildToolsVersion '29.0.3'
|
2017-08-02 07:39:38 -06:00
|
|
|
defaultConfig {
|
|
|
|
applicationId "com.m2049r.xmrwallet"
|
|
|
|
minSdkVersion 21
|
2021-04-15 11:10:01 -06:00
|
|
|
targetSdkVersion 30
|
|
|
|
versionCode 900
|
|
|
|
versionName "1.19.0.2 'XXX'"
|
2020-10-15 18:52:08 -06:00
|
|
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
2017-08-02 07:39:38 -06:00
|
|
|
externalNativeBuild {
|
|
|
|
cmake {
|
|
|
|
cppFlags "-std=c++11"
|
|
|
|
arguments '-DANDROID_STL=c++_shared'
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2020-10-15 18:52:08 -06:00
|
|
|
bundle {
|
|
|
|
language {
|
|
|
|
enableSplit = false
|
|
|
|
}
|
|
|
|
}
|
2017-08-02 07:39:38 -06:00
|
|
|
|
2018-11-20 10:20:42 -07:00
|
|
|
flavorDimensions 'type', 'net'
|
2018-09-26 10:55:33 -06:00
|
|
|
productFlavors {
|
2018-11-20 10:20:42 -07:00
|
|
|
mainnet {
|
|
|
|
dimension 'net'
|
|
|
|
}
|
|
|
|
stagenet {
|
|
|
|
dimension 'net'
|
|
|
|
applicationIdSuffix '.stage'
|
2018-11-24 14:28:33 -07:00
|
|
|
versionNameSuffix ' (stage)'
|
2018-11-20 10:20:42 -07:00
|
|
|
}
|
2020-10-15 18:52:08 -06:00
|
|
|
devnet {
|
|
|
|
dimension 'net'
|
|
|
|
applicationIdSuffix '.test'
|
|
|
|
versionNameSuffix ' (test)'
|
|
|
|
}
|
2018-09-26 10:55:33 -06:00
|
|
|
alpha {
|
2018-11-20 10:20:42 -07:00
|
|
|
dimension 'type'
|
|
|
|
applicationIdSuffix '.alpha'
|
|
|
|
versionNameSuffix ' (alpha)'
|
2018-09-26 10:55:33 -06:00
|
|
|
}
|
|
|
|
prod {
|
2018-11-20 10:20:42 -07:00
|
|
|
dimension 'type'
|
2018-09-26 10:55:33 -06:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2017-08-02 07:39:38 -06:00
|
|
|
buildTypes {
|
|
|
|
release {
|
|
|
|
minifyEnabled false
|
|
|
|
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
|
|
|
}
|
2018-01-16 10:55:36 -07:00
|
|
|
debug {
|
|
|
|
applicationIdSuffix ".debug"
|
|
|
|
}
|
2021-02-12 16:01:19 -07:00
|
|
|
applicationVariants.all { variant ->
|
|
|
|
variant.buildConfigField "String", "ID_A", "\"" + getId("ID_A") + "\""
|
|
|
|
}
|
2017-08-02 07:39:38 -06:00
|
|
|
}
|
2018-09-26 10:55:33 -06:00
|
|
|
|
2017-08-02 07:39:38 -06:00
|
|
|
externalNativeBuild {
|
|
|
|
cmake {
|
|
|
|
path "CMakeLists.txt"
|
|
|
|
}
|
|
|
|
}
|
2018-01-23 13:35:26 -07:00
|
|
|
|
|
|
|
splits {
|
|
|
|
abi {
|
|
|
|
enable true
|
|
|
|
reset()
|
2018-09-27 10:24:22 -06:00
|
|
|
include 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'
|
2018-03-29 14:35:31 -06:00
|
|
|
universalApk true
|
2018-01-23 13:35:26 -07:00
|
|
|
}
|
|
|
|
}
|
2018-02-26 23:22:11 -07:00
|
|
|
|
|
|
|
// Map for the version code that gives each ABI a value.
|
|
|
|
def abiCodes = ['armeabi-v7a': 1, 'arm64-v8a': 2, 'x86': 3, 'x86_64': 4]
|
|
|
|
|
2018-08-02 02:51:10 -06:00
|
|
|
// Enumerate translated locales
|
|
|
|
def availableLocales = ["en"]
|
|
|
|
new File("app/src/main/res/").eachFileMatch(~/^values-.*/) { file ->
|
|
|
|
def languageTag = file.name.substring(7).replace("-r", "-")
|
2020-10-15 18:52:08 -06:00
|
|
|
if (languageTag != "night")
|
|
|
|
availableLocales.add(languageTag)
|
2018-08-02 02:51:10 -06:00
|
|
|
}
|
|
|
|
|
2018-02-26 23:22:11 -07:00
|
|
|
// APKs for the same app that all have the same version information.
|
|
|
|
android.applicationVariants.all { variant ->
|
2018-08-02 02:51:10 -06:00
|
|
|
// Update string resource: available_locales
|
|
|
|
variant.resValue("string", "available_locales", availableLocales.join(","))
|
2018-02-26 23:22:11 -07:00
|
|
|
// Assigns a different version code for each output APK.
|
2018-04-15 08:33:20 -06:00
|
|
|
variant.outputs.all {
|
2018-02-26 23:22:11 -07:00
|
|
|
output ->
|
|
|
|
def abiName = output.getFilter(com.android.build.OutputFile.ABI)
|
2020-10-19 15:44:40 -06:00
|
|
|
output.versionCodeOverride = abiCodes.get(abiName, 0) + 10 * versionCode
|
2018-04-15 08:33:20 -06:00
|
|
|
|
|
|
|
if (abiName == null) abiName = "universal"
|
2018-09-26 10:55:33 -06:00
|
|
|
def v = "${variant.versionName}".replaceFirst(" '.*' ?", "")
|
|
|
|
.replace(".", "x")
|
|
|
|
.replace("(", "-")
|
|
|
|
.replace(")", "")
|
2018-04-15 08:33:20 -06:00
|
|
|
outputFileName = "$rootProject.ext.apkName-" + v + "_" + abiName + ".apk"
|
2018-02-26 23:22:11 -07:00
|
|
|
}
|
|
|
|
}
|
2020-09-13 10:34:22 -06:00
|
|
|
|
|
|
|
compileOptions {
|
|
|
|
sourceCompatibility JavaVersion.VERSION_1_8
|
|
|
|
targetCompatibility JavaVersion.VERSION_1_8
|
|
|
|
}
|
2017-08-02 07:39:38 -06:00
|
|
|
}
|
|
|
|
|
2021-02-12 16:01:19 -07:00
|
|
|
def getId(name) {
|
|
|
|
def Properties props = new Properties()
|
|
|
|
props.load(new FileInputStream(new File('monerujo.id')))
|
|
|
|
return props[name]
|
|
|
|
}
|
|
|
|
|
2017-08-02 07:39:38 -06:00
|
|
|
dependencies {
|
2020-10-15 18:52:08 -06:00
|
|
|
implementation 'androidx.core:core:1.3.2'
|
|
|
|
implementation 'androidx.appcompat:appcompat:1.2.0'
|
2021-02-12 16:01:19 -07:00
|
|
|
implementation 'com.google.android.material:material:1.3.0'
|
2020-10-15 18:52:08 -06:00
|
|
|
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
|
|
|
|
implementation 'androidx.recyclerview:recyclerview:1.1.0'
|
|
|
|
implementation 'androidx.cardview:cardview:1.0.0'
|
|
|
|
implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.2.0-alpha01'
|
2020-11-19 08:36:01 -07:00
|
|
|
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
|
2017-11-21 12:55:31 -07:00
|
|
|
|
2020-10-15 18:52:08 -06:00
|
|
|
implementation 'me.dm7.barcodescanner:zxing:1.9.8'
|
2020-10-20 15:31:29 -06:00
|
|
|
implementation "com.squareup.okhttp3:okhttp:4.9.0"
|
|
|
|
implementation "com.burgstaller:okhttp-digest:2.1"
|
|
|
|
implementation "com.jakewharton.timber:timber:4.7.1"
|
2017-11-21 12:55:31 -07:00
|
|
|
|
2020-10-15 18:52:08 -06:00
|
|
|
implementation 'com.nulab-inc:zxcvbn:1.3.0'
|
2017-09-08 14:14:09 -06:00
|
|
|
|
2020-10-15 18:52:08 -06:00
|
|
|
implementation 'dnsjava:dnsjava:2.1.9'
|
|
|
|
implementation 'org.jitsi:dnssecjava:1.2.0'
|
|
|
|
implementation 'org.slf4j:slf4j-nop:1.7.30'
|
2019-01-10 10:58:37 -07:00
|
|
|
implementation 'com.github.brnunes:swipeablerecyclerview:1.0.2'
|
2018-09-17 01:03:07 -06:00
|
|
|
|
2019-03-08 16:02:58 -07:00
|
|
|
implementation 'com.github.aelstad:keccakj:1.1.0'
|
|
|
|
|
2018-04-15 08:33:20 -06:00
|
|
|
testImplementation "junit:junit:$rootProject.ext.junitVersion"
|
|
|
|
testImplementation "org.mockito:mockito-all:$rootProject.ext.mockitoVersion"
|
2020-10-20 15:31:29 -06:00
|
|
|
testImplementation "com.squareup.okhttp3:mockwebserver:4.9.0"
|
2019-01-10 11:30:59 -07:00
|
|
|
testImplementation 'org.json:json:20180813'
|
|
|
|
testImplementation 'net.jodah:concurrentunit:0.4.4'
|
2020-11-19 08:36:01 -07:00
|
|
|
|
|
|
|
compileOnly 'org.projectlombok:lombok:1.18.16'
|
|
|
|
annotationProcessor 'org.projectlombok:lombok:1.18.16'
|
2017-09-08 14:14:09 -06:00
|
|
|
}
|