Most of you have probably heard about the issues being written about around apps that use UDIDs. Apple’s policies on the matter are, like everything else, pretty opaque. This is unfortunate, because it creates panic and speculation. So I want to give you the latest relevant information and our plan to address this. First of all, we want to make it clear that we have not heard of a single Corona-based app being rejected because of this. In fact, after talking to partners, it is clear that very few, if any, apps have been rejected by Apple specifically because of the use of UDIDs. At the same time, Apple has deprecated the API and we do want to address this before it becomes an issue.
In case you missed it, Corona SDK now officially supports “the new iPad” (or “iPad 3″, as I’ll be referring to it for the rest of this post) in both the public release and cutting-edge Daily Builds. Since the iPad 3 sports four-times the number of pixels as the original iPad, there’s some confusion among some users as to how exactly graphical assets should be set up to ensure apps look their absolute best. The good news answer is: generally the same way, that is, if you’ve been supporting Apple’s existing retina display for the iPhone and iPod touch. But just for the sake of alleviating any potential confusion, I’ll go over everything in this tutorial.
Team Corona, Good news! After much fanfare, we finally got our hands on what seemed like the last iPad 3 on the planet, so we could finally hunker down and investigate the retina display issues. We now have a patch to the iOS builds available in daily build 767 that addresses the retina display issues. (Just realized it’s named after one of Boeing’s jets, which is kinda cool…) Couple of minor technical notes: We recommend updating to XCode 4.3.1/iOS 5.1 SDK. This lets you view your app on the iPad Retina device within the XCode simulator. If you already downloaded yesterday’s daily build from March 15, you’re all set; just click “Build”. Please start testing and give us your feedback in our special iPad 3
Last week, we named Dabble as our App of the Week and told you about its incredible backstory. Now, in the spirit of my previously coined term “board games 2.0,” (remember that with ROBOT 99?) Dabble has been released on iPad, allowing for the same type of coffee table fun as its board game counterpart. As good as the iPhone version is, this new iPad version is more faithful to the “gather ’round, children” communal aspect of the original, classic-styled game. Check out today’s feature in VentureBeat about Dabble below, and go soup up your iPad with it in the App Store now. BIG congrats yet again to Mr. Weiss and the teams at Ideas Never Implemented, Flashy Substance, and Itch.com!
There has been a lot of material presented over the last four parts. In this final part, we will finally go into some detail about our automated testing system for Android. We will also finally get an opportunity to bring everything together by looking a little more how our shell scripts orchestrate the test run and connect components from the previous parts. Android was a lot easier to setup automated on-device tests than iOS because the entire toolchain is command line driven. But ironically, actually running the tests has been more unreliable for us, mostly due to some bug related to adb. For some reason we can’t explain, adb will hang on us and it will not allow us to communicate with our device. This has
We allow Corona developers to also build for the Xcode iOS Simulator. Sometimes the simulator is preferable to our Mac or Windows simulator because the Xcode Simulator behaves more like a real device. Since we officially support the Xcode Simulator, we run our automated tests on the Xcode iOS Simulator to help verify our stuff actually works. While we could theoretically reuse the same process of scripting Xcode that we described in Part 2, we opted for a slightly different approach. As described in Part 2, Xcode 4 broke everything so we didn’t want to put this in the same critical path. Furthermore, Xcode 4 has some very nice speed improvements and reduces our build times to almost half. So instead, we simply use the command
As stated in Part 1, we use lua-TestMore for our testing and reporting. The output format is called TAP (Test Anything Protocol) . It is human readable and simple. TestMore and TAP are widely used enough that there are tools available to help you use it.
Now that you’ve seen the overview of the whole system, I’m going to talk about on-device testing on iOS first because this has been where we have endured the most pain.
Preamble: This post is going to be a little different than usual. What we present here is behind the scenes stuff used in making the Corona SDK. But we hope the information presented here goes beyond satisfying simple academic curiosity. We hope this information will actually be useful for others to directly use in their own projects. And the target audience for this post goes beyond our normal demographic. In addition to Corona developers, we are also reaching out to all Xcode/iOS/Mac developers, all Android developers, all Lua developers, and anybody interested in automated testing/software reliability. Also, as a consequence of our solution, people interested in Applescript, Scripting Bridge, and/or LuaCocoa may also find things of interest. Because the topic is vast, not every single
In case you missed the news this past weekend, you (our users) have just landed an unprecedented six Corona-made apps on an App Store chart. More specifically, the six apps are in the Top Free Kids Games chart for iPad, coming on the heels of Corona apps topping 16 million downloads — all further demonstrating the Corona Community‘s (again, that’s you!) knack for creating successful apps. And yes, they’re free, so you can check out each one below: Ribbit Match 2 (#33): Preschool matching game for children ages 3-5 from Colorado-based WeaveSoft Apps: . Float Free (#79): Simple yet addictive balloon-juggling game from Chicago studio Crawl Space Games. Previously chosen by as an App of the Week. . Chick Rush (#125): Tilt-based “chicken crosses the road” obstacle