Click here to Skip to main content
15,903,175 members
Articles / Programming Languages / C#

Using IntelliJ, Adobe ActionScript and AIR SDK to Create & Package iOS 7 Apps

Rate me:
Please Sign up or sign in to vote.
4.80/5 (2 votes)
30 Dec 2013CPOL3 min read 10.5K   1  
Using IntelliJ, Adobe ActionScript and AIR SDK to create & package iOS 7 apps

Just a quick post. Lately, I've been learning ActionScript. Having seen how easy it is to get an ActionScript project for Flash Player running on Android using Adobe AIR, I wanted to do the same for my iPhone. Getting stuff running on the AIR emulator and on the iOS simulator (under OS X) and AIR was pretty easy. In my case, this was using IntelliJ as the IDE (rather than Flash Builder) coupled with Flex 4.6 SDK. The real fun started when I started to package my application for submission to the App Store, in particular creating the App icons.

The version of the AIR SDK that comes with the Flex 4.6 SDK is 3.1. However, this isn't aware of the new iOS 7 App icons. It would seem a simple matter of adding additional entries to the Application Descriptor file, i.e., to support the 152x152 icon, just add:

HTML
<image152x152>icon152.png</image152x152>

to the <icon> section. Unfortunately, the schema knows this isn't valid (well, doesn't know about) and you end up with the following error:

error 103: application.icon.image152x152 is an unexpected element/attribute

To fix, the first step is to download & install the latest version AIR SDK which is 3.9 (4.0 beta aside). This does not mean download & install the latest version of the Flex SDK as this contains an older version of the AIR SDK. Also, as this needs installing on top of the one present in the existing Flex SDK installation, do not download the installer version, instead use the zip (Windows) or tbz2 (OS X). The following link takes you to both:

Then extract these within the Flex SDK (you might want to take a copy of this first but if things go wrong, you can always re-download it). The easiest way is to just copy/move the archive to the Flex SDK directory and extract the files there which will overwrite the existing ones.

NOTE: Up to this point, the same thing occurred on both Windows & OS X. The following steps only worked on OS X. In particular, updating the scheme in the Application Descriptor didn't work and when reverted back to 3.1 (& support for iOS 7 App Icons removed) then packaging the app was a problem as the AIR SDK seemed to be missing various binaries to create the ARM binaries. I haven't pursued this further as I was working on OS X at this point.

In theory, everything should work now. However, if you proceed to package the app. it will still give the same 103 error. This is because the scheme version number in the Application Descriptor needs updating. Most likely, the line will be:

XML
<application xmlns="http://ns.adobe.com/air/application/3.1">

The 3.1 needs changing to 3.9.

This may not fix the problem though. If you're using IntelliJ (sorry don't know about Flash Builder) and have selected the 'Generated' option for the Application Descriptor, then it appears by default IntelliJ (AIR?) creates this with a version of 3.1. In this case, you'll need to stop using this option. Instead, choose the 'Custom template' and either create your own or have IntelliJ (AIR?) generate one for you. If you choose the latter option, then IntelliJ offers a drop down to specify the version. However, it only lists 3.1 to 3.8. Therefore, this will need manually changing to 3.9.

At this point, it should be possible to successfully package an iOS app with iOS 7 App Icon support.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Team Leader
United Kingdom United Kingdom
My day job is mostly working in C++ with a bit of C#. I write a fair amount of command line based tools and really wish they could have a GUI front-end to them hence why I spend my spare time working with WPF.

I started a blog few years back but didn't do a lot with it. I've started describing some of the interesting programming things I come across on it. Please take a look.

Comments and Discussions

 
-- There are no messages in this forum --