diff options
Diffstat (limited to 'ios')
-rw-r--r-- | ios/Info.plist.xml | 59 | ||||
-rw-r--r-- | ios/build.gradle | 65 | ||||
-rw-r--r-- | ios/data/Default-568h@2x.png | bin | 0 -> 84382 bytes | |||
-rw-r--r-- | ios/data/Default.png | bin | 0 -> 29751 bytes | |||
-rw-r--r-- | ios/data/Default@2x.png | bin | 0 -> 85109 bytes | |||
-rw-r--r-- | ios/data/Default@2x~ipad.png | bin | 0 -> 97633 bytes | |||
-rw-r--r-- | ios/data/Default~ipad.png | bin | 0 -> 34134 bytes | |||
-rw-r--r-- | ios/data/Icon-72.png | bin | 0 -> 4439 bytes | |||
-rw-r--r-- | ios/data/Icon-72@2x.png | bin | 0 -> 6231 bytes | |||
-rw-r--r-- | ios/data/Icon.png | bin | 0 -> 4028 bytes | |||
-rw-r--r-- | ios/data/Icon@2x.png | bin | 0 -> 5679 bytes | |||
-rw-r--r-- | ios/robovm.properties | 6 | ||||
-rw-r--r-- | ios/robovm.xml | 46 | ||||
-rw-r--r-- | ios/src/ch/asynk/tankontank/IOSLauncher.java | 22 |
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 Binary files differnew file mode 100644 index 0000000..101752f --- /dev/null +++ b/ios/data/Default-568h@2x.png diff --git a/ios/data/Default.png b/ios/data/Default.png Binary files differnew file mode 100644 index 0000000..f1a5582 --- /dev/null +++ b/ios/data/Default.png diff --git a/ios/data/Default@2x.png b/ios/data/Default@2x.png Binary files differnew file mode 100644 index 0000000..ca32f62 --- /dev/null +++ b/ios/data/Default@2x.png diff --git a/ios/data/Default@2x~ipad.png b/ios/data/Default@2x~ipad.png Binary files differnew file mode 100644 index 0000000..bb77ef0 --- /dev/null +++ b/ios/data/Default@2x~ipad.png diff --git a/ios/data/Default~ipad.png b/ios/data/Default~ipad.png Binary files differnew file mode 100644 index 0000000..855e4f2 --- /dev/null +++ b/ios/data/Default~ipad.png diff --git a/ios/data/Icon-72.png b/ios/data/Icon-72.png Binary files differnew file mode 100644 index 0000000..8cc5759 --- /dev/null +++ b/ios/data/Icon-72.png diff --git a/ios/data/Icon-72@2x.png b/ios/data/Icon-72@2x.png Binary files differnew file mode 100644 index 0000000..ec5e380 --- /dev/null +++ b/ios/data/Icon-72@2x.png diff --git a/ios/data/Icon.png b/ios/data/Icon.png Binary files differnew file mode 100644 index 0000000..7f4bf36 --- /dev/null +++ b/ios/data/Icon.png diff --git a/ios/data/Icon@2x.png b/ios/data/Icon@2x.png Binary files differnew file mode 100644 index 0000000..eddc17c --- /dev/null +++ b/ios/data/Icon@2x.png 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 |