mirror of
https://github.com/apache/cordova-android.git
synced 2025-01-19 23:42:53 +08:00
95 lines
2.2 KiB
Groovy
95 lines
2.2 KiB
Groovy
import java.util.regex.Pattern
|
|
|
|
apply plugin: 'android'
|
|
|
|
buildscript {
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
classpath 'com.android.tools.build:gradle:0.10.+'
|
|
}
|
|
}
|
|
|
|
ext.multiarch=false
|
|
|
|
dependencies {
|
|
compile fileTree(dir: 'libs', include: '*.jar')
|
|
for (subproject in getProjectList()) {
|
|
compile project(subproject)
|
|
}
|
|
}
|
|
|
|
android {
|
|
sourceSets {
|
|
main {
|
|
manifest.srcFile 'AndroidManifest.xml'
|
|
java.srcDirs = ['src']
|
|
resources.srcDirs = ['src']
|
|
aidl.srcDirs = ['src']
|
|
renderscript.srcDirs = ['src']
|
|
res.srcDirs = ['res']
|
|
assets.srcDirs = ['assets']
|
|
}
|
|
}
|
|
|
|
defaultConfig {
|
|
versionCode Integer.parseInt("" + getVersionCodeFromManifest() + "0")
|
|
}
|
|
|
|
compileSdkVersion 19
|
|
buildToolsVersion "19.0.0"
|
|
|
|
if (multiarch || System.env.BUILD_MULTIPLE_APKS) {
|
|
productFlavors {
|
|
armv7 {
|
|
versionCode defaultConfig.versionCode + 2
|
|
ndk {
|
|
abiFilters "armeabi-v7a", ""
|
|
}
|
|
}
|
|
x86 {
|
|
versionCode defaultConfig.versionCode + 4
|
|
ndk {
|
|
abiFilters "x86", ""
|
|
}
|
|
}
|
|
all {
|
|
ndk {
|
|
abiFilters "all", ""
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
compileOptions {
|
|
sourceCompatibility JavaVersion.VERSION_1_7
|
|
targetCompatibility JavaVersion.VERSION_1_7
|
|
}
|
|
|
|
}
|
|
|
|
task wrapper(type: Wrapper) {
|
|
gradleVersion = '1.12'
|
|
}
|
|
|
|
def getVersionCodeFromManifest() {
|
|
def manifestFile = file(android.sourceSets.main.manifest.srcFile)
|
|
def pattern = Pattern.compile("versionCode=\"(\\d+)\"")
|
|
def matcher = pattern.matcher(manifestFile.getText())
|
|
matcher.find()
|
|
return Integer.parseInt(matcher.group(1))
|
|
}
|
|
|
|
def getProjectList() {
|
|
def manifestFile = file("project.properties")
|
|
def pattern = Pattern.compile("android.library.reference.(\\d+)\\s*=\\s*(.*)")
|
|
def matcher = pattern.matcher(manifestFile.getText())
|
|
def projects = []
|
|
while (matcher.find()) {
|
|
projects.add(":" + matcher.group(2).replace("/",":"))
|
|
}
|
|
return projects
|
|
}
|