summaryrefslogtreecommitdiffstats
path: root/ios
diff options
context:
space:
mode:
Diffstat (limited to 'ios')
-rw-r--r--ios/Info.plist.xml59
-rw-r--r--ios/build.gradle65
-rw-r--r--ios/data/Default-568h@2x.pngbin0 -> 84382 bytes
-rw-r--r--ios/data/Default.pngbin0 -> 29751 bytes
-rw-r--r--ios/data/Default@2x.pngbin0 -> 85109 bytes
-rw-r--r--ios/data/Default@2x~ipad.pngbin0 -> 97633 bytes
-rw-r--r--ios/data/Default~ipad.pngbin0 -> 34134 bytes
-rw-r--r--ios/data/Icon-72.pngbin0 -> 4439 bytes
-rw-r--r--ios/data/Icon-72@2x.pngbin0 -> 6231 bytes
-rw-r--r--ios/data/Icon.pngbin0 -> 4028 bytes
-rw-r--r--ios/data/Icon@2x.pngbin0 -> 5679 bytes
-rw-r--r--ios/robovm.properties6
-rw-r--r--ios/robovm.xml46
-rw-r--r--ios/src/ch/asynk/tankontank/IOSLauncher.java22
14 files changed, 198 insertions, 0 deletions
diff --git a/ios/Info.plist.xml b/ios/Info.plist.xml
new file mode 100644
index 0000000..407bec7
--- /dev/null
+++ b/ios/Info.plist.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleDevelopmentRegion</key>
+ <string>en</string>
+ <key>CFBundleDisplayName</key>
+ <string>${app.name}</string>
+ <key>CFBundleExecutable</key>
+ <string>${app.executable}</string>
+ <key>CFBundleIdentifier</key>
+ <string>${app.id}</string>
+ <key>CFBundleInfoDictionaryVersion</key>
+ <string>6.0</string>
+ <key>CFBundleName</key>
+ <string>${app.name}</string>
+ <key>CFBundlePackageType</key>
+ <string>APPL</string>
+ <key>CFBundleShortVersionString</key>
+ <string>${app.version}</string>
+ <key>CFBundleSignature</key>
+ <string>????</string>
+ <key>CFBundleVersion</key>
+ <string>${app.build}</string>
+ <key>LSRequiresIPhoneOS</key>
+ <true/>
+ <key>UIViewControllerBasedStatusBarAppearance</key>
+ <false/>
+ <key>UIStatusBarHidden</key>
+ <true/>
+ <key>UIDeviceFamily</key>
+ <array>
+ <integer>1</integer>
+ <integer>2</integer>
+ </array>
+ <key>UIRequiredDeviceCapabilities</key>
+ <array>
+ <string>armv7</string>
+ <string>opengles-2</string>
+ </array>
+ <key>UISupportedInterfaceOrientations</key>
+ <array>
+ <string>UIInterfaceOrientationPortrait</string>
+ <string>UIInterfaceOrientationLandscapeLeft</string>
+ <string>UIInterfaceOrientationLandscapeRight</string>
+ </array>
+ <key>CFBundleIcons</key>
+ <dict>
+ <key>CFBundlePrimaryIcon</key>
+ <dict>
+ <key>CFBundleIconFiles</key>
+ <array>
+ <string>Icon</string>
+ <string>Icon-72</string>
+ </array>
+ </dict>
+ </dict>
+</dict>
+</plist>
diff --git a/ios/build.gradle b/ios/build.gradle
new file mode 100644
index 0000000..4bbbefe
--- /dev/null
+++ b/ios/build.gradle
@@ -0,0 +1,65 @@
+sourceSets.main.java.srcDirs = [ "src/" ]
+
+sourceCompatibility = '1.7'
+[compileJava, compileTestJava]*.options*.encoding = 'UTF-8'
+
+ext {
+ mainClassName = "ch.asynk.tankontank.IOSLauncher"
+}
+
+// Extracts native libs (*.a) from the native-ios.jar and places them
+// under build/libs/ios/.
+task copyNatives << {
+ file("build/libs/ios/").mkdirs();
+ configurations.natives.files.each { jar ->
+ def outputDir = null
+ if (jar.name.endsWith("natives-ios.jar")) outputDir = file("build/libs/ios")
+ if (outputDir != null) {
+ copy {
+ from zipTree(jar)
+ into outputDir
+ include "*.a"
+ }
+ }
+ }
+}
+
+// Updates a robovm.xml file.
+task updateRoboVMXML << {
+ def xml = file('robovm.xml')
+
+ if (!xml.exists()) {
+ return
+ }
+
+ // Find all native (*.a) libraries beneath libs
+ def libtree = fileTree(dir: 'build/libs', include: '**/*.a')
+
+ def config = new groovy.util.XmlParser().parse(xml)
+ config.libs.each {libs ->
+ libs.children().clear()
+ libtree.each { File file ->
+ libs.appendNode('lib', 'build/libs/ios/' + file.getName())
+ }
+ }
+
+ def writer = new FileWriter(xml)
+ def printer = new XmlNodePrinter(new PrintWriter(writer))
+ printer.setPreserveWhitespace true
+ printer.print(config)
+}
+
+updateRoboVMXML.dependsOn copyNatives
+build.dependsOn updateRoboVMXML
+tasks.eclipse.dependsOn updateRoboVMXML
+
+launchIPhoneSimulator.dependsOn build
+launchIPadSimulator.dependsOn build
+launchIOSDevice.dependsOn build
+createIPA.dependsOn build
+
+
+eclipse.project {
+ name = appName + "-ios"
+ natures 'org.robovm.eclipse.RoboVMNature'
+} \ No newline at end of file
diff --git a/ios/data/Default-568h@2x.png b/ios/data/Default-568h@2x.png
new file mode 100644
index 0000000..101752f
--- /dev/null
+++ b/ios/data/Default-568h@2x.png
Binary files differ
diff --git a/ios/data/Default.png b/ios/data/Default.png
new file mode 100644
index 0000000..f1a5582
--- /dev/null
+++ b/ios/data/Default.png
Binary files differ
diff --git a/ios/data/Default@2x.png b/ios/data/Default@2x.png
new file mode 100644
index 0000000..ca32f62
--- /dev/null
+++ b/ios/data/Default@2x.png
Binary files differ
diff --git a/ios/data/Default@2x~ipad.png b/ios/data/Default@2x~ipad.png
new file mode 100644
index 0000000..bb77ef0
--- /dev/null
+++ b/ios/data/Default@2x~ipad.png
Binary files differ
diff --git a/ios/data/Default~ipad.png b/ios/data/Default~ipad.png
new file mode 100644
index 0000000..855e4f2
--- /dev/null
+++ b/ios/data/Default~ipad.png
Binary files differ
diff --git a/ios/data/Icon-72.png b/ios/data/Icon-72.png
new file mode 100644
index 0000000..8cc5759
--- /dev/null
+++ b/ios/data/Icon-72.png
Binary files differ
diff --git a/ios/data/Icon-72@2x.png b/ios/data/Icon-72@2x.png
new file mode 100644
index 0000000..ec5e380
--- /dev/null
+++ b/ios/data/Icon-72@2x.png
Binary files differ
diff --git a/ios/data/Icon.png b/ios/data/Icon.png
new file mode 100644
index 0000000..7f4bf36
--- /dev/null
+++ b/ios/data/Icon.png
Binary files differ
diff --git a/ios/data/Icon@2x.png b/ios/data/Icon@2x.png
new file mode 100644
index 0000000..eddc17c
--- /dev/null
+++ b/ios/data/Icon@2x.png
Binary files differ
diff --git a/ios/robovm.properties b/ios/robovm.properties
new file mode 100644
index 0000000..12ffe95
--- /dev/null
+++ b/ios/robovm.properties
@@ -0,0 +1,6 @@
+app.version=1.0
+app.id=ch.asynk.tankontank.IOSLauncher
+app.mainclass=ch.asynk.tankontank.IOSLauncher
+app.executable=IOSLauncher
+app.build=1
+app.name=TankOnTank
diff --git a/ios/robovm.xml b/ios/robovm.xml
new file mode 100644
index 0000000..df09d9d
--- /dev/null
+++ b/ios/robovm.xml
@@ -0,0 +1,46 @@
+<config>
+ <executableName>${app.executable}</executableName>
+ <mainClass>${app.mainclass}</mainClass>
+ <os>ios</os>
+ <arch>thumbv7</arch>
+ <target>ios</target>
+ <iosInfoPList>Info.plist.xml</iosInfoPList>
+ <resources>
+ <resource>
+ <directory>../android/assets</directory>
+ <includes>
+ <include>**</include>
+ </includes>
+ <skipPngCrush>true</skipPngCrush>
+ </resource>
+ <resource>
+ <directory>data</directory>
+ </resource>
+ </resources>
+ <forceLinkClasses>
+ <pattern>com.badlogic.gdx.scenes.scene2d.ui.*</pattern>
+ <pattern>com.badlogic.gdx.physics.bullet.**</pattern>
+ <pattern>com.android.okhttp.HttpHandler</pattern>
+ <pattern>com.android.okhttp.HttpsHandler</pattern>
+ <pattern>com.android.org.conscrypt.**</pattern>
+ <pattern>com.android.org.bouncycastle.jce.provider.BouncyCastleProvider</pattern>
+ <pattern>com.android.org.bouncycastle.jcajce.provider.keystore.BC$Mappings</pattern>
+ <pattern>com.android.org.bouncycastle.jcajce.provider.keystore.bc.BcKeyStoreSpi</pattern>
+ <pattern>com.android.org.bouncycastle.jcajce.provider.keystore.bc.BcKeyStoreSpi$Std</pattern>
+ <pattern>com.android.org.bouncycastle.jce.provider.PKIXCertPathValidatorSpi</pattern>
+ <pattern>com.android.org.bouncycastle.crypto.digests.AndroidDigestFactoryOpenSSL</pattern>
+ <pattern>org.apache.harmony.security.provider.cert.DRLCertFactory</pattern>
+ <pattern>org.apache.harmony.security.provider.crypto.CryptoProvider</pattern>
+ </forceLinkClasses>
+ <libs>
+ </libs>
+ <frameworks>
+ <framework>UIKit</framework>
+ <framework>OpenGLES</framework>
+ <framework>QuartzCore</framework>
+ <framework>CoreGraphics</framework>
+ <framework>OpenAL</framework>
+ <framework>AudioToolbox</framework>
+ <framework>AVFoundation</framework>
+ </frameworks>
+</config>
diff --git a/ios/src/ch/asynk/tankontank/IOSLauncher.java b/ios/src/ch/asynk/tankontank/IOSLauncher.java
new file mode 100644
index 0000000..e9636d9
--- /dev/null
+++ b/ios/src/ch/asynk/tankontank/IOSLauncher.java
@@ -0,0 +1,22 @@
+package ch.asynk.tankontank;
+
+import org.robovm.apple.foundation.NSAutoreleasePool;
+import org.robovm.apple.uikit.UIApplication;
+
+import com.badlogic.gdx.backends.iosrobovm.IOSApplication;
+import com.badlogic.gdx.backends.iosrobovm.IOSApplicationConfiguration;
+import ch.asynk.tankontank.TankOnTank;
+
+public class IOSLauncher extends IOSApplication.Delegate {
+ @Override
+ protected IOSApplication createApplication() {
+ IOSApplicationConfiguration config = new IOSApplicationConfiguration();
+ return new IOSApplication(new TankOnTank(), config);
+ }
+
+ public static void main(String[] argv) {
+ NSAutoreleasePool pool = new NSAutoreleasePool();
+ UIApplication.main(argv, null, IOSLauncher.class);
+ pool.close();
+ }
+} \ No newline at end of file