summaryrefslogtreecommitdiffstats
path: root/android
diff options
context:
space:
mode:
Diffstat (limited to 'android')
-rw-r--r--android/AndroidManifest.xml26
-rw-r--r--android/assets/badlogic.jpgbin0 -> 68465 bytes
-rw-r--r--android/build.gradle121
-rw-r--r--android/ic_launcher-web.pngbin0 -> 51394 bytes
-rw-r--r--android/proguard-project.txt42
-rw-r--r--android/project.properties14
-rw-r--r--android/res/drawable-hdpi/ic_launcher.pngbin0 -> 7658 bytes
-rw-r--r--android/res/drawable-mdpi/ic_launcher.pngbin0 -> 3777 bytes
-rw-r--r--android/res/drawable-xhdpi/ic_launcher.pngbin0 -> 12516 bytes
-rw-r--r--android/res/drawable-xxhdpi/ic_launcher.pngbin0 -> 24777 bytes
-rw-r--r--android/res/values/strings.xml6
-rw-r--r--android/res/values/styles.xml12
-rw-r--r--android/src/ch/asynk/tankontank/android/AndroidLauncher.java16
13 files changed, 237 insertions, 0 deletions
diff --git a/android/AndroidManifest.xml b/android/AndroidManifest.xml
new file mode 100644
index 0000000..b1bc868
--- /dev/null
+++ b/android/AndroidManifest.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ package="ch.asynk.tankontank.android"
+ android:versionCode="1"
+ android:versionName="1.0" >
+
+ <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="20" />
+
+ <application
+ android:allowBackup="true"
+ android:icon="@drawable/ic_launcher"
+ android:label="@string/app_name"
+ android:theme="@style/GdxTheme" >
+ <activity
+ android:name="ch.asynk.tankontank.android.AndroidLauncher"
+ android:label="@string/app_name"
+ android:screenOrientation="landscape"
+ android:configChanges="keyboard|keyboardHidden|orientation|screenSize">
+ <intent-filter>
+ <action android:name="android.intent.action.MAIN" />
+ <category android:name="android.intent.category.LAUNCHER" />
+ </intent-filter>
+ </activity>
+ </application>
+
+</manifest>
diff --git a/android/assets/badlogic.jpg b/android/assets/badlogic.jpg
new file mode 100644
index 0000000..4390da6
--- /dev/null
+++ b/android/assets/badlogic.jpg
Binary files differ
diff --git a/android/build.gradle b/android/build.gradle
new file mode 100644
index 0000000..6fcf85b
--- /dev/null
+++ b/android/build.gradle
@@ -0,0 +1,121 @@
+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']
+ }
+
+ 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', 'ch.asynk.tankontank.android/ch.asynk.tankontank.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")
+ }
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/android/ic_launcher-web.png b/android/ic_launcher-web.png
new file mode 100644
index 0000000..a18cbb4
--- /dev/null
+++ b/android/ic_launcher-web.png
Binary files differ
diff --git a/android/proguard-project.txt b/android/proguard-project.txt
new file mode 100644
index 0000000..88c3958
--- /dev/null
+++ b/android/proguard-project.txt
@@ -0,0 +1,42 @@
+# To enable ProGuard in your project, edit project.properties
+# to define the proguard.config property as described in that file.
+#
+# Add project specific ProGuard rules here.
+# By default, the flags in this file are appended to flags specified
+# in ${sdk.dir}/tools/proguard/proguard-android.txt
+# You can edit the include path and order by changing the ProGuard
+# include property in project.properties.
+#
+# For more details, see
+# http://developer.android.com/guide/developing/tools/proguard.html
+
+# Add any project specific keep options here:
+
+# If your project uses WebView with JS, uncomment the following
+# and specify the fully qualified class name to the JavaScript interface
+# class:
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
+# public *;
+#}
+
+-verbose
+
+-dontwarn android.support.**
+-dontwarn com.badlogic.gdx.backends.android.AndroidFragmentApplication
+-dontwarn com.badlogic.gdx.utils.GdxBuild
+-dontwarn com.badlogic.gdx.physics.box2d.utils.Box2DBuild
+-dontwarn com.badlogic.gdx.jnigen.BuildTarget*
+
+-keepclassmembers class com.badlogic.gdx.backends.android.AndroidInput* {
+ <init>(com.badlogic.gdx.Application, android.content.Context, java.lang.Object, com.badlogic.gdx.backends.android.AndroidApplicationConfiguration);
+}
+
+-keepclassmembers class com.badlogic.gdx.physics.box2d.World {
+ boolean contactFilter(long, long);
+ void beginContact(long);
+ void endContact(long);
+ void preSolve(long, long);
+ void postSolve(long, long);
+ boolean reportFixture(long);
+ float reportRayFixture(long, float, float, float, float, float);
+}
diff --git a/android/project.properties b/android/project.properties
new file mode 100644
index 0000000..4ab1256
--- /dev/null
+++ b/android/project.properties
@@ -0,0 +1,14 @@
+# This file is automatically generated by Android Tools.
+# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
+#
+# This file must be checked in Version Control Systems.
+#
+# To customize properties used by the Ant build system edit
+# "ant.properties", and override values to adapt the script to your
+# project structure.
+#
+# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):
+#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
+
+# Project target.
+target=android-19
diff --git a/android/res/drawable-hdpi/ic_launcher.png b/android/res/drawable-hdpi/ic_launcher.png
new file mode 100644
index 0000000..288b665
--- /dev/null
+++ b/android/res/drawable-hdpi/ic_launcher.png
Binary files differ
diff --git a/android/res/drawable-mdpi/ic_launcher.png b/android/res/drawable-mdpi/ic_launcher.png
new file mode 100644
index 0000000..6ae570b
--- /dev/null
+++ b/android/res/drawable-mdpi/ic_launcher.png
Binary files differ
diff --git a/android/res/drawable-xhdpi/ic_launcher.png b/android/res/drawable-xhdpi/ic_launcher.png
new file mode 100644
index 0000000..d4fb7cd
--- /dev/null
+++ b/android/res/drawable-xhdpi/ic_launcher.png
Binary files differ
diff --git a/android/res/drawable-xxhdpi/ic_launcher.png b/android/res/drawable-xxhdpi/ic_launcher.png
new file mode 100644
index 0000000..85a6081
--- /dev/null
+++ b/android/res/drawable-xxhdpi/ic_launcher.png
Binary files differ
diff --git a/android/res/values/strings.xml b/android/res/values/strings.xml
new file mode 100644
index 0000000..7566cd6
--- /dev/null
+++ b/android/res/values/strings.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+
+ <string name="app_name">TankOnTank</string>
+
+</resources>
diff --git a/android/res/values/styles.xml b/android/res/values/styles.xml
new file mode 100644
index 0000000..3f00fc5
--- /dev/null
+++ b/android/res/values/styles.xml
@@ -0,0 +1,12 @@
+<resources>
+
+ <style name="GdxTheme" parent="android:Theme">
+ <item name="android:windowBackground">@android:color/transparent</item>
+ <item name="android:colorBackgroundCacheHint">@null</item>
+ <item name="android:windowAnimationStyle">@android:style/Animation</item>
+ <item name="android:windowNoTitle">true</item>
+ <item name="android:windowContentOverlay">@null</item>
+ <item name="android:windowFullscreen">true</item>
+ </style>
+
+</resources>
diff --git a/android/src/ch/asynk/tankontank/android/AndroidLauncher.java b/android/src/ch/asynk/tankontank/android/AndroidLauncher.java
new file mode 100644
index 0000000..eded114
--- /dev/null
+++ b/android/src/ch/asynk/tankontank/android/AndroidLauncher.java
@@ -0,0 +1,16 @@
+package ch.asynk.tankontank.android;
+
+import android.os.Bundle;
+
+import com.badlogic.gdx.backends.android.AndroidApplication;
+import com.badlogic.gdx.backends.android.AndroidApplicationConfiguration;
+import ch.asynk.tankontank.TankOnTank;
+
+public class AndroidLauncher extends AndroidApplication {
+ @Override
+ protected void onCreate (Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ AndroidApplicationConfiguration config = new AndroidApplicationConfiguration();
+ initialize(new TankOnTank(), config);
+ }
+}