Experiences with Flash, AIR and iOS

Well I’ve been pretty busy latey and not much has happened on here for over month. I decided I should post some work and experiments I have been doing with building iOS apps with AIR for iOS. So below is a series of video demos of some experiments and actual projects I have been doing recently. All apps were compiled using Flash CS5. Note that none of these apps are available in the public app store.

Adventure Golf

Adventure Golf is a simple mini golf game I worked on for a client last year which was written in AS2. I decided to see how easy it was to build existing games for iOS so I converted all the AS2 to AS3 with minimal code changes/optimisations and Published for iOS. All graphics are pulled from the Flash library, with levels laid out on the stage on different frames. The hardest thing I had to do was resize the stage. Everything else just worked and I was surprised at how well it did considering it was converted from old AS2 code. I would like build this into a full app one day when I have lots of spare time!


Simnet QRG

Simnet QRG was ‘Quick Reference Guide’ app I built at work for Simplot. This app required heaps of optimisations to get all transitions and scrolling working extremely smoothly, especially to my standard. I am very picky and a bit of a perfectionist when it comes to UI responsiveness and smoothness – one of the reasons I love Windows Phone. This was my first encounter with building a proper mobile optimised app. All graphics are either Sprites from the Flash Library or drawn dynamically. If they were vector graphics or text they were drawn to a bitmap before being added to the display list. The guide list on the home screen is a series of sprites drawn to bitmaps, scrolled using ScrollRect with easing and inertia thanks to TweenLite – in fact all tweening was done with TweenLite. The guides were laid out in Flash, with each page’s assets laid out into individual MovieClips (comprising of text, bitmaps and vectors). At runtime, these MovieClips all get drawn to bitmaps then the original MovieClips discarded. The guides were scrolled using ScrollRect with only the previous, current and next pages on the display list at once.


Pixel Perfect

My most recent project is a digital graffiti wall application for Classy Events Group. Over the last few months we have been working on bringing together an awesome graffiti wall experience. Just out of curiosity I wanted to see how camera and camera roll integration with with AIR for iOS. Since I had been working on Pixel Perfect, I thought I’d try making an experimental iPad version. I added the ability to take a picture with the camera and add it to the canvas, and the ability to save your creation back to the camera roll. Again, it was surprising how little the amount of code changes were necessary to have it running nicely on an iPad – and incorporate it with OS features and hardware.



Flash and AIR are awesome. The possibilities they open up are amazing and as long as you know what your doing  AIR apps can be just as responsive and smooth as ones written in native ObjectiveC. Any app no matter what language it was written in can be crap if the developer doesn’t write it correctly. So here’s to the future of AIR.

Posted toActionScript AIR Experiments Flash Interactive iOS Mobile User Interface