From a developer's point of view, are there other differences between Flash and AIR to take into account, apart from the certificate and AIR not supporting ActionScript 2.0?
Well, the obvious difference is that AIR runs on your desktop and not in the browser. The AIR runtime ( what your swf runs inside when it is an AIR app ) also provides you with more access to the user's computers.
This is not a comprehensive list, but here are a few features that AIR has that the normal flash player doesn't:
- local file system access
- sqlite database classes
- webkit integration ( for displaying html )
- native drag and drop
- clipboard
- open external apps from within your air
AIR apps can be built w/ pure ActionScript, Flex, JavaScript & HTML.
Here you can find the complete ActionScript Language Reference for AIR 2.0.: http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/index.html?filter_air=2
Note that any class with the AIR icon next to it is AIR only. This should be a good way for you to see what is unique to AIR.
AIR addition to the actionscript 3 language that provide ways to control features from windows, mac, and linux. eg the titlebar and saving files.
Flex is an addition to the actionscript 3 language that provides way to new interrogation features from server technologies like java, php, asp and connection between multiple flash applications and databases.
Flash (CS4) can include AIR code but doesn't include Flex code. the server technology in Flash is limited but exists. Flash includes the GUI that stream lines developing. Like vector based graphics, filters, and components. Also more documentation and examples because it's easier to rewrite classes from Flex into Flash then rewriting Flash code for classes.
Where in Flash you have a button, radio button, dropdown, or menu for every property of a movieclip, image, button. Where in Flex you can write all these properties/options by simply copying pasting, and tweaking the raw code.