forked from forcedotcom/SalesforceMobileSDK-Android
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathbuild.gradle.kts
More file actions
101 lines (85 loc) · 3.18 KB
/
Copy pathbuild.gradle.kts
File metadata and controls
101 lines (85 loc) · 3.18 KB
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
rootProject.ext["PUBLISH_GROUP_ID"] = "com.salesforce.mobilesdk"
rootProject.ext["PUBLISH_VERSION"] = "13.1.0"
rootProject.ext["PUBLISH_ARTIFACT_ID"] = "SalesforceAnalytics"
plugins {
`android-library`
`kotlin-android`
`publish-module`
jacoco
}
dependencies {
api("com.squareup:tape:1.2.3")
api("io.github.pilgr:paperdb:2.7.2")
implementation("androidx.core:core-ktx:1.16.0") // Update requires API 36 compileSdk
androidTestImplementation("androidx.test:runner:1.7.0")
androidTestImplementation("androidx.test:rules:1.7.0")
androidTestImplementation("androidx.test.ext:junit:1.3.0")
}
android {
namespace = "com.salesforce.androidsdk.analytics"
testNamespace = "com.salesforce.androidsdk.analytics.tests"
//noinspection GradleDependency - Will be upgraded to 36 in Mobile SDK 14.0
compileSdk = 35
defaultConfig {
minSdk = 28
}
buildTypes {
debug {
enableAndroidTestCoverage = true
}
}
sourceSets {
getByName("main") {
manifest.srcFile("AndroidManifest.xml")
java.srcDirs(arrayOf("src"))
resources.srcDirs(arrayOf("src"))
aidl.srcDirs(arrayOf("src"))
renderscript.srcDirs(arrayOf("src"))
res.srcDirs(arrayOf("res"))
assets.srcDirs(arrayOf("assets"))
}
getByName("androidTest") {
setRoot("../test/SalesforceAnalyticsTest")
java.srcDirs(arrayOf("../test/SalesforceAnalyticsTest/src"))
resources.srcDirs(arrayOf("../test/SalesforceAnalyticsTest/src"))
res.srcDirs(arrayOf("../test/SalesforceAnalyticsTest/res"))
}
}
packaging {
resources {
excludes += setOf("META-INF/LICENSE", "META-INF/LICENSE.txt", "META-INF/DEPENDENCIES", "META-INF/NOTICE")
}
}
defaultConfig {
testApplicationId = "com.salesforce.androidsdk.analytics.tests"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}
lint {
abortOnError = false
xmlReport = true
}
buildFeatures {
renderScript = true
aidl = true
buildConfig = true
}
kotlin {
jvmToolchain(17)
}
val convertCodeCoverage: TaskProvider<JacocoReport> = tasks.register<JacocoReport>("convertedCodeCoverage") {
group = "Coverage"
description = "Convert coverage.ec from Firebase Test Lab to XML that is usable by CodeCov."
}
convertCodeCoverage {
reports {
xml.required = true
html.required = true
}
sourceDirectories.setFrom("${project.projectDir}/src/main/java")
val fileFilter = arrayListOf("**/R.class", "**/R$*.class", "**/BuildConfig.*", "**/Manifest*.*", "**/*Test*.*", "android/**/*.*")
val javaTree = fileTree("${project.projectDir}/build/intermediates/javac/debug") { setExcludes(fileFilter) }
val kotlinTree = fileTree("${project.projectDir}/build/tmp/kotlin-classes/debug") { setExcludes(fileFilter) }
classDirectories.setFrom(javaTree, kotlinTree)
executionData.setFrom(fileTree("$rootDir/firebase/artifacts/sdcard") { setIncludes(arrayListOf("*.ec")) })
}
}