Newbie wants to start on IOS
Monkey Targets Forums/iOS/Newbie wants to start on IOS
| ||
Hi, since two years I'm now coding with Monkey on HTML5 and ANDROID, reading all relevant articles on monkeycoder, but never the IOS forum. So I can tell I'm a real newbie here. Now my new android app Score-Trainer seems to be successful and a lot of people ask me to build an IOS version. So I plan to join the IOS world... I have a WindowsPC with XP, a MAC MINI with OsX 10.5, and a IPad2 with WiFi. On the MAC MINI I have installed everything to build BlitzMax programs. Here are my questions: Is there any tutorial, about what I have to prepare to be able to start building monkey code for IPhone and Ipad? Is the build of a "Hello World"-app the same for Iphone and Ipad? Is there any simulator on the MAC MINI? How usable and fast is it? How do you test your apps normally? Do I need a "IStore seller account" first to test my own apps? How to do? Does the SDK for IOS has any sideeffects on the SDK for BlitzMax? I still need a possiblity to write BlitzMax apps on the MAC MINI. Normally I write the app on Windows Monkey for HTML5, because the turn-around is so fast. Finally I test it on a ANDROID smartphone to find some last bugs. How big is the chance, that this code runs well on the Apple Monkey and on IOS? What are the typical problems i will run into? |
| ||
From the last time I built for iOS using Monkey, all you really need is XCode on your Mac and Monkey. Compile your app in Monkey as normal with the iOS target and Monkey will do its magic... I can't remember if XCode opens after compile, but if it doesn't open up the XCode project Monkey generates and click the Run button in there. The simulator is part of XCode and its super fast compared to the Android emulator! Yes, you do need a developer account if you want to test on an actual device, but the simulator is good enough to get you started. The chance that the code you wrote for Android in Monkey working on iOS is very high ;) Once you are happy with the simulator running your game, I highly recommend testing it a proper real life device. |
| ||
When you want to start testing on your device and need to setup an Apple Developer Account, I'd recommend following the links in this post. http://www.monkeycoder.co.nz/Community/posts.php?topic=4150 It took me from no account to running code on my device inside an hour. |
| ||
Imho IOS is a pain for developer. One simple mistake while installing those provisioning profiles and nothing will work without a full reset (except the simulator). As therevills mentioned, you'll only need Xcode to run your app in the simulator. Which one is good. Not so fast as a real device, but faster than the android emulator. Of course, to publish your app you've to set up more. Currently I'm on the windows 8 target. But I've planned to write a simple tutorial about IOS, Xcode and monkey in the next few days. |
| ||
Beware the "other" stuff on iOS, too. The amount of background garbage you have to do is phenomenal. Not only is there all the nasty provision licenses, and dev-keys, and certificate-codes and other garbage, there's a whole extra pile of hidden codes and certificate gubbins when you want to actually "Distribute" your app. nngh. And then there's the icons. I'm no artist, but Apple stipulate that their "iTunesArtwork.png" (ie the icon displayed in the AppStore) is a whopping 1024x1024 pixels in size. For that piddly little icon! And if you're thinking of adding GameCenter Achievements (which are nice and easy to code thanks to Mark's latest updates) you're going to be drawing 1024x1024 icons for each and every one of those, too. Oh, the joy! Then you've gotta upload it all, image by image, and type in a whole lot of horrible nasty repetitive garbage for each and every one of them. It isn't fun. It's a horrible interface, and you'll want to punch Apple in the face for having made it like that. .. But it works. Eventually.. And when it's all done you can finally sell your apps, and make your pennies. woot! |
| ||
what about these certificates? What about signing the app? Will it be done inside monkeys building process? Or additinal manualy steps? A question to XCode. Is this the same like for BitzMax? |
| ||
Monkey doesn't sign the app for you. You have to open the Xcode project and add all the provisioning stuff and certificates. Sounds all scary but I actually got my account a couple of hours ago and my game is all ready for distribution. I don't know anything about uploading the game to the appstore, as I made this game for a client so he is in charge of that. |
| ||
For over-the-air distribution of your apps, to testers etc I can fully recommend TestFlight - great service which allows users to install your app by clicking a link in an email, no iTunes, no usb cable. http://www.testflightapp.com |
| ||
Can i use old mac mini with "Intel Core 2 Duo" ? I really do not need a mac for daily use - only for app compiling. And how good is the emulator? Must i buy a ipod/iphone/ipad to test games? |
| ||
You could just go full with the simulator but I would recommend buying a device, even if it's an ipod touch. This really gives you a feeling of how it looks and works. About the simulator it's pretty good, at least better than android. |
| ||
perhaps I'm too stupid... I downloaded the first time in my live the V69 to my MacMini and copied the folder from "Downloads" to "Applications/MonkeyPro69/". Then I clicked on "Monkey.app" inside this folder... After a long time, I got a message, that TED was finished with this error message: Process: Ted [166] Path: /Applications/MonkeyPro69/bin/Ted.app/Contents/MacOS/Ted Identifier: com.yourcompany.Ted Version: ??? (???) Code Type: X86-64 (Native) Parent Process: launchd [65] Interval Since Last Report: 130634 sec Crashes Since Last Report: 13 Per-App Interval Since Last Report: 0 sec Per-App Crashes Since Last Report: 2 Date/Time: 2013-04-22 15:33:56.171 +0200 OS Version: Mac OS X 10.5.8 (9L31a) Report Version: 6 Anonymous UUID: 2427BC0A-5DEA-4400-B709-4ECAF5C8EAB2 Exception Type: EXC_BREAKPOINT (SIGTRAP) Exception Codes: 0x0000000000000002, 0x0000000000000000 Crashed Thread: 0 Dyld Error Message: Symbol not found: _OBJC_CLASS_$_CALayerHost Referenced from: /Applications/MonkeyPro69/bin/Ted.app/Contents/MacOS/../Frameworks/QtWebKit.framework/Versions/4/QtWebKit Expected in: /System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore What do I do wrong? |
| ||
A short report from my experiments with Monkey on Mac: I had a Mac Mini with OsX10.5 and Monkey V69 did not start on it. Now I updated to OsX10.6 and "Xcode3.2 with SDKs for 10.6" andd Monkey works. Because the OsX10.7 needs 2GB RAM, I cannot upgrade now to Lion. But I want to have XCode 4.2. There was a version for Snow Leopard, but the Apple Store only offers the version for Lion. Does anybody has an idea, how to get XCode 4.2? |
| ||
Does anybody has an idea, how to get XCode 4.2? The developer download section has it, make sure you log in with your id: https://developer.apple.com/downloads |
| ||
Yes, I've already seen that. But that's the "only Lion" version of Xcode 4.2.... I found informations, that this download will not work on a OsX10.6. What do you think? |
| ||
Yes it works only with Lion. Personally, as I don't get warm with Mac OS, I've setup VMWare with latest MacOS. Runs well in a windows under Windows 7. :) |
| ||
Yep, I can also confirm it runs well in VMWare under Windows 7 :) |
| ||
When I answer here but only after a week, it's not because I'm inpolite. It's because time for installing something on a Mac is not counted in minutes or hours, but in days... 4.4GB of downloading Xcode needs 8 hours to germany. And installing again 5 hours. What the f... are these files containing? At the end I have now XCode 3.2.6 for Mac OsX 10.6 and IOS 4.3, but... ...it is still not working! I tested to compile a minimum monkey code... Strict Import mojo Class Game Extends App Method OnCreate%() SetUpdateRate 15 Return 0 End Method OnUpdate%() If KeyHit(KEY_ESCAPE) Then Error "" Return 0 End Method OnRender%() Cls Return 0 End End Function Main%() New Game Return 0 End and got this error messages: I'm completely frustated, because I don't understand a single line of this report. Is it really necessary, that a simple start of monkey can cause such a lot of problems? The HTML5 target and the Glfw target works perfect. Both tested with "BouncyAliens.monkey" too. What should be my next step now? |