I've just start playing around with Air, so please bare with me. I have a fairly large application that already runs pretty well on the browser (better on some browsers than others.)
In my first pass at making it run in Air, I've created an Air application that contains nothing more than an iframe that loads my application.
Without modifying my (ExtJS 3.0) application at all, it runs remarkably well (the only real problem is a custom combobox that contains a tree.) When I say 'without modification', I mean I have not even added the ext-air.js or ext-air.css.
I have looked at several tutorials, but I still have some fairly basic (perhaps even stupid) questions:
Is this "my entire app loads from the web server in an iframe" a completely insane model? (I know that I'd be missing out on some of the big benefits of Air, but my main goal for working with Air is to have a modern, high-performance "browser" that our software support group is capable of managing - this is for an enterprise environment and they have pretty much ruled out anything other than IE)
If #1 is ok, is the ext-air.js and ext-air.css necessary in this model, or is it just for when you have bits of ExtJS running "locally" (i.e. in the Air application sandbox)
If I add ext-air.js and ext-air.css (built from the latest on the SVN) to the "remote" code (the bit that gets loaded from the server), the "air" variable is not defined (adding AIRAliases.js to the remote code doesn't help because "window.runtime" is not defined) - is this due to a defect somewhere or is this due to conceptual confusion on my part?
1) Running the app completely within an iframe isn't insane, but you lose some of the best attributes of AIR, like access to the local file system or the local SQLite database. You can still use the AIR runtime using sandbox bridge functions, but they are a pain to use because they neuter the data that you send through them.
Also, in my experience, memory management in the non-app sandbox is lousy. I don't think security is a problem, because the non-application sandbox doesn't have direct access to the air runtime.
The ext-air.css file is also not necessary. However, it changes a few annoying things so you won't have to. FOr example, you can't create the splitbar cursor in AIR, so the stylesheet changes it to the 'move' cursor. It has some other safari fixes, but you can get by without it.