Compiling AIR Flash 10 projects with pure ActionScript code

Straight and to the point, hopefully as a reference, because I had trouble finding the answer to problems on specific parts of the process. This considers you already have a normal Flex SDK project setup in whichever tool you’re using (I’m using FDT).

  1. Be sure to download the latest version of Flex SDK command-line tools (I recommend the “Adobe Flex SDK” files, whichever version – stable if you wanna play it safe, nightly if you’re feeling lucky). You do not need to edit the config.xml files – it’s set to Flash 10 as default.
  2. Change your regular AS3 compilation procedure to use amxmlc.bat instead of mxmlc.exe for compilation. The same compilation syntax applies so this should be pretty straightforward.
  3. Create an AIR project. This page has a nice tutorial on how to do it. You don’t need to create the .mxml file though – as long as you use the same syntax you use to compile normal .as-based projects in mxmlc, it should work. Very important: the AIR XML file header should be set to use version 1.5. So the application tag start should read <application xmlns="http://ns.adobe.com/air/application/1.5"> instead.
  4. Run your application with adl.exe instead of flashplayer.exe.

Optionally, the complete AS3 reference (including AIR) is available online. You can also download it in zip form from this link.

And remember AIR applications built for Flash 10 will require AIR 1.5 to install (the current version is 1.1). This means you can compile and run your application locally without a lot of trouble, but if you try installing your packaged Flash 10-based application on AIR 1.1, you’ll run into a misleading message that says the package requires an “older” version of AIR and that you need an “upated” version of the packaged application. For the installation to work, we’ll have to wait for AIR 1.5, which will come “this fall”. You can find more information about AIR 1.5 here. AIR 1.5 is now out so applications built with the method mentioned above will work.