1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
import kau.Dependencies
import kau.Versions
apply plugin: 'com.android.library'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-parcelize'
apply plugin: 'com.github.dcendents.android-maven'
//apply plugin: 'com.getkeepsafe.dexcount'
group = "ca.allanwang"
android {
compileSdkVersion Versions.targetSdk
androidGitVersion {
codeFormat = 'MMNNPPXX'
format = '%tag%%.count%%-commit%'
}
def kauMinSdk = Versions.minSdk
if (project.hasProperty('kauSubModuleMinSdk'))
kauMinSdk = kauSubModuleMinSdk
def kauResourcePrefix = "kau_"
if (project.hasProperty('kauSubModuleResourcePrefix'))
kauResourcePrefix = kauSubModuleResourcePrefix
resourcePrefix kauResourcePrefix
defaultConfig {
minSdkVersion kauMinSdk
targetSdkVersion Versions.targetSdk
versionName androidGitVersion.name()
versionCode androidGitVersion.code()
consumerProguardFiles 'progress-proguard.txt'
multiDexEnabled true
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildFeatures {
viewBinding = true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
lintOptions {
// warningsAsErrors true
disable 'UnusedResources',
'ContentDescription',
'RtlSymmetry',
'RtlHardcoded',
'RtlEnabled',
'Overdraw',
'MissingTranslation'
xmlReport false
textReport true
textOutput 'stdout'
}
packagingOptions {
pickFirst 'META-INF/core_release.kotlin_module'
pickFirst 'META-INF/library_release.kotlin_module'
pickFirst 'META-INF/library-core_release.kotlin_module'
exclude "**/module-info.class"
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = JavaVersion.VERSION_1_8.toString()
}
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
test.java.srcDirs += 'src/test/kotlin'
androidTest.java.srcDirs += 'src/androidTest/kotlin'
main.res.srcDirs += 'src/main/res-public'
}
testOptions.unitTests {
// Don't throw runtime exceptions for android calls that are not mocked
returnDefaultValues = true
// Always show the result of every unit test, even if it passes.
all {
testLogging {
events 'passed', 'skipped', 'failed', 'standardOut', 'standardError'
}
}
}
}
dependencies {
testImplementation Dependencies.kotlinTest
testImplementation Dependencies.junit
androidTestImplementation Dependencies.kotlinTest
androidTestImplementation Dependencies.espresso
androidTestImplementation Dependencies.testRules
androidTestImplementation Dependencies.testRunner
}
|