123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- android {
- buildToolsVersion "19.1.0"
- compileSdkVersion 20
- sourceSets {
- main {
- manifest.srcFile 'AndroidManifest.xml'
- java.srcDirs = ['src']
- aidl.srcDirs = ['src']
- renderscript.srcDirs = ['src']
- res.srcDirs = ['res']
- assets.srcDirs = ['assets']
- }
- instrumentTest.setRoot('tests')
- }
- }
- // needed to add JNI shared libraries to APK when compiling on CLI
- tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask ->
- pkgTask.jniFolders = new HashSet<File>()
- pkgTask.jniFolders.add(new File(projectDir, 'libs'))
- }
- // 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/x86/").mkdirs();
- configurations.natives.files.each { jar ->
- def outputDir = null
- 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.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.eyeofmidas.cardtrick.android/com.eyeofmidas.cardtrick.android.AndroidLauncher'
- }
- // sets up the Android Eclipse project, using the old Ant based build.
- eclipse {
- // need to specify Java source sets explicitely, 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")
- }
- }
- }
- }
- }
- }
- }
|