
Every time I create an AIR application that I know will be live someday, I always add support for updating it with the Adobe AIR update framework. Sooner rather than later, your application will need an update. Picture this: your application is a tremendous success and many people have installed it. A short time later you have a fix for a security issue, or you've just added the coolest feature ever. Suddenly you have a problem: how do you push this update to clients who already have installed your application?
If the application doesn't include support for the update process, then your problem is now a big one. The users will have to uninstall the current version, download the new one, and install it. This is hardly a friendly workflow.
The Adobe AIR update framework provides developers with APIs to create AIR applications that can be updated very easily. It comes in two flavors: one has a default user interface, and the other requires you to create your own UI and hook it up to the events that this framework provides.
The default user interface option uses Flex components; so if you are planning to create your AIR application using Flash, you can't use it. If you create the application with Flex or Ajax, you can use either one.
This article explains how to use the Adobe AIR update framework to easily and seamlessly push updates to AIR applications created using Flash, Flex, or Ajax.
In order to make the most of this article, you need one of the following authoring tools:
You also need the following software and files:
To benefit most from this article, you should be familiar with the AIR runtime; Flex Builder, Aptana Studio, or Flash CS4 Professional; and ActionScript 3.0 or JavaScript.
Mihai Corlan is a platform evangelist at Adobe. Before that, he worked with Flex Builder as a computer scientist. Before joining Adobe, Mihai was a senior developer with InterAKT Online (acquired by Adobe in 2006), where he worked on web products such as e-shops, newsletters, and surveys or on RAD tools for web developers. Visit Mihai's blog.