-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
/
app.build.gradle
120 lines (113 loc) · 4.19 KB
/
app.build.gradle
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
110
111
112
113
114
115
116
117
118
119
120
apply plugin: 'com.android.application'
// Apply the Google Services plugin if included
if (file("${projectDir}/google-services.json").exists()) {
apply plugin: 'com.google.gms.google-services'
}
repositories {
<% if (mavenRepositoryUrls) { for (let nextUrl of mavenRepositoryUrls) { %>
maven { url '<%- nextUrl %>' }
<% } } %>
}
android {
compileSdkVersion <%- compileSdkVersion %>
namespace '<%- applicationId %>'
defaultConfig {
applicationId '<%- applicationId %>'
minSdkVersion <%- minSdkVersion %>
targetSdkVersion <%- targetSdkVersion %>
versionCode <%- versionCode %>
versionName '<%- versionName %>'
manifestPlaceholders = project.ext.tiManifestPlaceholders
manifestPlaceholders.put('localApplicationId', applicationId) // Legacy placeholder old AARs sometimes use.
multiDexEnabled true
aaptOptions {
// Android build tools ignores asset directories with leading underscores, but iOS supports it.
// So, we must redefine ignore string with underscore pattern removed to support this too.
ignoreAssetsPattern '!.svn:!.git:!.ds_store:!*.scc:.*:!CVS:!thumbs.db:!picasa.ini:!*~'
}
<% if (ndkAbiArray && (ndkAbiArray.length > 0)) { %>
ndk {
abiFilters <%- "'" + ndkAbiArray.join("','") + "'" %>
}
<% } %>
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_17
targetCompatibility JavaVersion.VERSION_17
}
buildFeatures {
buildConfig true
}
signingConfigs {
def tiKeystoreFilePath = <%- "'" + tiSdkAndroidDir.replace(/\\/g, '\\\\') + "/dev_keystore'" %>
if (System.env.TI_ANDROID_APP_KEYSTORE_FILE != null) {
tiKeystoreFilePath = System.env.TI_ANDROID_APP_KEYSTORE_FILE
}
def tiKeystorePassword = 'tirocks'
if (System.env.TI_ANDROID_APP_KEYSTORE_PASSWORD != null) {
tiKeystorePassword = System.env.TI_ANDROID_APP_KEYSTORE_PASSWORD
}
def tiKeystoreAliasName = 'tidev'
if (System.env.TI_ANDROID_APP_KEYSTORE_ALIAS_NAME != null) {
tiKeystoreAliasName = System.env.TI_ANDROID_APP_KEYSTORE_ALIAS_NAME
}
def tiKeystoreAliasPassword = 'tirocks'
if (System.env.TI_ANDROID_APP_KEYSTORE_ALIAS_PASSWORD != null) {
tiKeystoreAliasPassword = System.env.TI_ANDROID_APP_KEYSTORE_ALIAS_PASSWORD
} else if (System.env.TI_ANDROID_APP_KEYSTORE_PASSWORD != null) {
tiKeystoreAliasPassword = System.env.TI_ANDROID_APP_KEYSTORE_PASSWORD
}
config {
storeFile file(tiKeystoreFilePath)
storePassword tiKeystorePassword
keyAlias tiKeystoreAliasName
keyPassword tiKeystoreAliasPassword
enableV3Signing true
}
}
buildTypes {
debug {
signingConfig signingConfigs.config
}
release {
signingConfig signingConfigs.config
<% if (proguardFilePaths && (proguardFilePaths.length > 0)) { %>
minifyEnabled true
proguardFiles(
getDefaultProguardFile('proguard-android-optimize.txt'),
<%- "'" + proguardFilePaths.join("',\n'").replace(/\\/g, '\\\\') + "'" %>)
<% } %>
}
}
lintOptions {
checkReleaseBuilds false
}
packagingOptions {
pickFirst '/lib/arm64-v8a/libc++_shared.so'
pickFirst '/lib/armeabi-v7a/libc++_shared.so'
pickFirst '/lib/x86/libc++_shared.so'
pickFirst '/lib/x86_64/libc++_shared.so'
}
}
// Disable linting to improve build performance. No point since all Java code is generated.
tasks.lint.enabled = false
dependencies {
implementation "androidx.appcompat:appcompat:${project.ext.tiAndroidXAppCompatLibVersion}"
implementation fileTree(dir: "${rootDir}/libs", include: ['*.aar', '*.jar'])
implementation fileTree(dir: "${projectDir}/src/main", include: ['*.aar', '*.jar'])
<% if (libFilePaths && (libFilePaths.length > 0)) { %>
implementation files(<%- ("'" + libFilePaths.join("','") + "'").replace(/\\/g, '\\\\') %>)
<% } %>
<% if (libProjectNames) { for (let nextLibProjectName of libProjectNames) { %>
implementation project(':<%- nextLibProjectName %>')
<% } } %>
<% if (libDependencyStrings) { for (let nextString of libDependencyStrings) { %>
implementation '<%- nextString %>'
<% } } %>
}
// Load optional "build.gradle" file copied from Titanium project's "platform/android" directory.
// Allows app developer to add additional dependencies, such as those needed by hyperloop.
def customBuildGradlePath = "${projectDir}/src/main/build.gradle"
if (file(customBuildGradlePath).exists()) {
apply from: customBuildGradlePath
}