Automating remote software updates in Adobe AIR applications

I just released the first version of AIR Remote Updater, an AS3 class to automate remote software updates in Adobe AIR applications.

It transparently checks version numbers, downloads the .AIR installer file if needed and triggers the AIR-native update process.

It grabs the version number directly from the remote .AIR file without having to download the entire file, eliminating the potential error prone need of having to put a separate descriptor file online along with the .AIR installer file.

Background:

An .AIR installer file is a PKZIP archive containing metadata files along with the packaged application files. The files contained in a .AIR installer file are, in this order:

  1. /mimetype
  2. /META-INF/AIR/application.xml (contains version info)
  3. /META-INF/AIR/hash
  4. /META-INF/signatures.xml
  5. packaged application files

The file we are interested in, /META-INF/AIR/application.xml (the “application descriptor file” that contains the version number), is always the second file in the archive. AIR Remote Updater uses FZip to stream in the remote .AIR until (and only until) the application descriptor file has loaded. We can then close the stream, uncompress that file and extract the version number.

More info and download here:
http://codeazur.com.br/lab/airremoteupdater/

6 thoughts on “Automating remote software updates in Adobe AIR applications

  1. Pingback: Sönke Rohde » AIR Remote Updater

  2. cool stuff Claus. Thanks for sharing :)
    I bet you it’s going to be used in a lot of AIR Apps !

  3. Hi,

    I have renamed the application.xml file into app-version.xml and moved into root. I have implemented your code. But the file path was not find the xml file for the descriptor. How can I get the descriptor file? and update the AIR file?

  4. James, you don’t need a separate descriptor xml on your server. Just pass the URL of the .AIR and AIR Remote Updater figures it out by itself

Comments are closed.