repositories { mavenCentral() maven { url "https://oss.sonatype.org/content/repositories/snapshots/" } } android { buildToolsVersion "20.0.0" compileSdkVersion 20 sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] aidl.srcDirs = ['src'] renderscript.srcDirs = ['src'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] jniLibs.srcDirs = ['libs'] } } } // 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 { 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") } } } } } } } // used to create obb file task copyAssets << { def assets = fileTree('assets') copy { from assets into "build/obbassets" rename { fileName -> fileName = "obbasset-" + fileName } } } task zipAssets(type: Zip) { destinationDir = file("build/obb") entryCompression = ZipEntryCompression.STORED from "build/obbassets" baseName = "main.1.com.badlogic.gdx.tests.android" extension = "obb" } def getADBPath() { def path def localProperties = new 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" adb } task createOBBDir(type: Exec) { def adb = getADBPath(); commandLine "$adb", 'shell', 'mkdir', '-p', '/mnt/sdcard/Android/obb/com.badlogic.gdx.tests.android' } task uploadOBB(type: Exec) { def adb = getADBPath(); commandLine "$adb", 'push', 'build/obb/main.1.com.badlogic.gdx.tests.android.obb', '/mnt/sdcard/Android/obb/com.badlogic.gdx.tests.android' } copyAssets.dependsOn clean zipAssets.dependsOn copyAssets createOBBDir.dependsOn zipAssets uploadOBB.dependsOn createOBBDir