7ee76771f5
aab/apk now doesn't einclude local debug files Maybe solved resume problem on Chrome OS (see issue 322), needs to be checked
162 lines
4.9 KiB
Groovy
162 lines
4.9 KiB
Groovy
android {
|
|
buildToolsVersion "28.0.3"
|
|
compileSdkVersion 28
|
|
sourceSets {
|
|
main {
|
|
manifest.srcFile 'AndroidManifest.xml'
|
|
java.srcDirs = ['src']
|
|
aidl.srcDirs = ['src']
|
|
renderscript.srcDirs = ['src']
|
|
res.srcDirs = ['res']
|
|
assets.srcDirs = ['assets']
|
|
jniLibs.srcDirs = ['libs']
|
|
}
|
|
|
|
androidTest.setRoot('tests')
|
|
}
|
|
packagingOptions {
|
|
exclude 'META-INF/robovm/ios/robovm.xml'
|
|
}
|
|
defaultConfig {
|
|
applicationId "com.unciv.game"
|
|
minSdkVersion 14
|
|
targetSdkVersion 28
|
|
versionCode 178
|
|
versionName "2.10.14"
|
|
}
|
|
|
|
// Had to add this crap for Travis to build, it wanted to sign the app
|
|
// but couldn't create the debug keystore for some reason
|
|
|
|
signingConfigs {
|
|
debug {
|
|
storeFile rootProject.file('debug.keystore')
|
|
keyAlias 'androiddebugkey'
|
|
keyPassword 'android'
|
|
storePassword 'android'
|
|
}
|
|
}
|
|
|
|
buildTypes {
|
|
release {
|
|
// Don't add local save files and fonts to release, obviously
|
|
aaptOptions {
|
|
ignoreAssetsPattern "!SaveFiles:!fonts"
|
|
}
|
|
|
|
minifyEnabled false
|
|
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
|
}
|
|
|
|
debug {
|
|
// Don't add local save files and fonts to release, obviously
|
|
aaptOptions {
|
|
ignoreAssetsPattern "!SaveFiles:!fonts"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
// called every time gradle gets executed, takes the native dependencies of
|
|
// the natives configuration, and extracts them to the proper libs/ folders
|
|
// so they get packed with the APK.
|
|
task copyAndroidNatives() {
|
|
file("libs/armeabi/").mkdirs()
|
|
file("libs/armeabi-v7a/").mkdirs()
|
|
file("libs/arm64-v8a/").mkdirs()
|
|
file("libs/x86_64/").mkdirs()
|
|
file("libs/x86/").mkdirs()
|
|
|
|
configurations.natives.files.each { jar ->
|
|
def outputDir = null
|
|
if(jar.name.endsWith("natives-arm64-v8a.jar")) outputDir = file("libs/arm64-v8a")
|
|
if(jar.name.endsWith("natives-armeabi-v7a.jar")) outputDir = file("libs/armeabi-v7a")
|
|
if(jar.name.endsWith("natives-armeabi.jar")) outputDir = file("libs/armeabi")
|
|
if(jar.name.endsWith("natives-x86_64.jar")) outputDir = file("libs/x86_64")
|
|
if(jar.name.endsWith("natives-x86.jar")) outputDir = file("libs/x86")
|
|
if(outputDir != null) {
|
|
copy {
|
|
from zipTree(jar)
|
|
into outputDir
|
|
include "*.so"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
task run(type: Exec) {
|
|
def path
|
|
def localProperties = project.file("../local.properties")
|
|
if (localProperties.exists()) {
|
|
Properties properties = new Properties()
|
|
localProperties.withInputStream { instr ->
|
|
properties.load(instr)
|
|
}
|
|
def sdkDir = properties.getProperty('sdk.dir')
|
|
if (sdkDir) {
|
|
path = sdkDir
|
|
} else {
|
|
path = "$System.env.ANDROID_HOME"
|
|
}
|
|
} else {
|
|
path = "$System.env.ANDROID_HOME"
|
|
}
|
|
|
|
def adb = path + "/platform-tools/adb"
|
|
commandLine "$adb", 'shell', 'am', 'start', '-n', 'com.unciv.game/AndroidLauncher'
|
|
}
|
|
|
|
// sets up the Android Eclipse project, using the old Ant based build.
|
|
eclipse {
|
|
// need to specify Java source sets explicitly, SpringSource Gradle Eclipse plugin
|
|
// ignores any nodes added in classpath.file.withXml
|
|
sourceSets {
|
|
main {
|
|
java.srcDirs "src", 'gen'
|
|
}
|
|
}
|
|
|
|
jdt {
|
|
sourceCompatibility = 1.6
|
|
targetCompatibility = 1.6
|
|
}
|
|
|
|
classpath {
|
|
plusConfigurations += [ project.configurations.compile ]
|
|
containers 'com.android.ide.eclipse.adt.ANDROID_FRAMEWORK', 'com.android.ide.eclipse.adt.LIBRARIES'
|
|
}
|
|
|
|
project {
|
|
name = appName + "-android"
|
|
natures 'com.android.ide.eclipse.adt.AndroidNature'
|
|
buildCommands.clear()
|
|
buildCommand "com.android.ide.eclipse.adt.ResourceManagerBuilder"
|
|
buildCommand "com.android.ide.eclipse.adt.PreCompilerBuilder"
|
|
buildCommand "org.eclipse.jdt.core.javabuilder"
|
|
buildCommand "com.android.ide.eclipse.adt.ApkBuilder"
|
|
}
|
|
}
|
|
|
|
// sets up the Android Idea project, using the old Ant based build.
|
|
idea {
|
|
module {
|
|
sourceDirs += file("src")
|
|
scopes = [ COMPILE: [plus:[project.configurations.compile]]]
|
|
|
|
iml {
|
|
withXml {
|
|
def node = it.asNode()
|
|
def builder = NodeBuilder.newInstance()
|
|
builder.current = node
|
|
builder.component(name: "FacetManager") {
|
|
facet(type: "android", name: "Android") {
|
|
configuration {
|
|
option(name: "UPDATE_PROPERTY_FILES", value:"true")
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|