Adobe onAIR Bus Tour: Baltimore

Yair and I went to the Baltimore stop of Adobe's onAIR Bus Tour tonight.

Ryan Stewart

Ryan Stewart kicked off the keynote giving an introduction and overview to Adobe AIR. After briefly going over the background/web-history of the Flash player and the motivations behind the development of Adobe AIR, Ryan showcased some AIR applications:

He also highlighted that with the newly announced update to Flash Player 9 (codenamed "Moviestar"), Flash SWFs will be able to support H.264 video and HE-AAC audio. This will allow Quicktime movies to be played through SWFs and the Adobe Media Player.

Ryan then mentioned that the second public beta drop of AIR will be released during the MAX 2007 conference. Also, we were reminded of the AIR Developer Derby: a contest to see who can make the best AIR application. The grand prize is essentially a $100,000 travel coupon. There will also be five category winners that will win "The Ultimate Desktop Environment", which is pretty much a bunch of beast hardware.

Mike Chambers

Next up was Mike Chambers demo'ing how to write a HelloWorld Flex-based AIR application. Pretty standard, but he went on to highlight the install experience for end-users that will be using AIR applications we developers will be creating. End-users will need the AIR runtime in order to install an AIR app, but developers will be able to place a Flash Badge on their website which will allow users without the AIR runtime to install both the runtime and their AIR application with only 4 clicks.

Mike finished off with pointing any developers that are starting to play around with AIR to the onAIR Bus APIs which have a ton of live data that can be used in an AIR app.

Kevin Hoyt

Kevin Hoyt was next to demo how to build an HTML-based AIR Application.

Kevin emphasized that Flex Builder is not necessary to create AIR applications. The Flex 3 SDK (which is freely downloadable) contains the AIR SDK as well, so you can compile and debug your AIR applications from the command line. Dreamweaver CS3 also has an AIR extension so if you're a web developer that's afraid of the command line you can go ahead and develop your HTML page in Dreamweaver and debug the application or package it as an AIR file directly within the comfort of Dreamweaver.

Script Bridging

Kevin next demo'd the script bridging capabilities of AIR, which lets JavaScript reach into the ActionScript world and invoke any methods in the Flash API (anything in the flash.* namespace). The reverse is also true (ActionScript reaching into the JavaScript world). This means you can have a purely HTML-based AIR application that can call methods in the Flash API by simply doing things like:

<code>&lt;script&gt;
  var airFile = window.runtime.flash.filesystem.File;
  var desktop = airFile.desktopDirectory;
  var myFileInJS = new airFile(desktop.resolve("file_on_the_desktop.txt");
&lt;/script&gt;
</code>

Here, myFileInJS is a JavaScript variable that references an ActionScript 3 class from the AIR SDK.

So "window.runtime.flash.* can let you directly use any Flash class from JavaScript. IMO the coolest thing Kevin covered is the ability augment the Flash packages you can use by simply script including a library.swf from any SWC to access those AS classes:

<code>&lt;script src="library.swf"&gt;&lt;/script&gt;
&lt;script&gt;
  var encoder = runtime.com.adobe.images.PNGEncoder;
  encoder.encode( bitmapData )
&lt;/script&gt;
</code>

In this example, encoder is the PNGEncoder from the as3corelib project, but the encoding is being done in JavaScript using AS classes! Very cool stuff. (FYI: a SWC is stored in a ZIP format, so you can just unzip a SWC file to access the library.swf inside of it)

Chafic Kazoun: Windowing in AIR

Windowing concepts Chafic covered/demo'd:

  • utility window
  • standard window
  • custom chrome transparent window
  • custom chrome where background is embedded in a SWF
  • custom window dispatching events and being listened to by another window

Ben Forta: AIR + ColdFusion

Highlights from Ben's talk:

  • 50% of existing ColdFusion customers have upgraded to ColdFusion 8.
  • ColdFusion/Flex Extensions for Eclipse available at Adobe's ColdFusion page.

Can generate a ColdFusion-backed Flex web app w/ literally no front-end coding; the extension has Master/Detail/Master_Detail and DB wizards to configure everything which then generates the CFCs, MXML components, and CSS stylesheets using all best practices.

This was possible before in ColdFusion 7, but now ColdFusion 8 can generate a ColdFusion-backed AJAX/HTML/CSS web app in the same manner.

From AIR you can load an HTML page from a ColdFusion backend and it will properly renders this AJAX/HTML/CSS generated content.

Author image

About Greg Jastrab

You've successfully subscribed to SmartLogic Blog
Great! Next, complete checkout for full access to SmartLogic Blog
Welcome back! You've successfully signed in.
Unable to sign you in. Please try again.
Success! Your account is fully activated, you now have access to all content.
Error! Stripe checkout failed.
Success! Your billing info is updated.
Error! Billing info update failed.