Recently I was debugging an AIR installation issue, and didn’t realize that the log files have changed with AIR 2.0. Thought I’d pass on the knowledge.
Mac:
/private/var/log/system.log (or the console app)
Win XP:
C:\Documents and Settings\<username>\Local Settings\Application Data\Adobe\AIR\logs\Install.log
Recently, a coworker asked me – ‘What’s Robotlegs all About?’. I waved my hands around a bit, rambled about dependency injection, Spring, Swiz, until his eyes glazed over. Talking about frameworks only goes so far.
Enter Richard Lord’s fantastic AS3 framework comparison using Flexcaster, an example podcast application. Its a pretty simple example, but it compares the syntax and structure of a variety of frameworks including Robotlegs, PureMVC, Swiz, Cairngorm, as well as pure Flex 3 – all using a simple, uniform example.
Comparing the level of complexity, simply from a class-count, is a pretty interesting exercise. Check out these numbers!
Flex 3 – 13 Classes
PureMVC – 28 classes
Robotlegs – 30 classes (!)
Cairngorm – 20 classes
Swiz – 18 classes
To the framework’s defense, they are designed to scale to much larger projects, and its not entirely an apples-to-apples comparison. Robotlegs, for example, demonstrates two different feed implementations, and has a slightly different UI class model than the Flex 3 example. The Swiz example, eschews the Command pattern, and instead uses singletons. Its definitely an eye-opener to compare how they differ.
Recently, I got a chance to check out Scott Evan’s slides for his MAX 2009 talk on Flashbuilder tips and tricks. There’s a ton of new features, including:
Advanced navigation
Indentation Correction
MXML and Actionscript file Templates
Conditional Breakpoints (!)
I would definitely recommend checking out his slides, or his talk on Adobe TV. You’ll be more productive in no time!
Hello, I am pleased to announce that I will be speaking at MAX on the IHT Reader project, a next-generation desktop newsreader application that was featured in the MAX keynote on Monday.
Speaking along with Jeremy Clark and Justin Van Slembrouck, we’ll be covering the project from both a design and development perspective. I’ll be digging into some of the new text technology in AIR 1.5 and FP10 that made this project possible. I hope to see you there!
Ok, this is not the most tasteful AIR app, but it is technically one of the best. By leveraging Flash transparent video and AIR transparent windows, they’ve managed to create an app that cleverly interacts with your desktop experience. Its also pretty fun to play around with! Hats off to The Sun UK in creating such an innovative app! Check it out here.
AIR provides some great API’s for integrating with other applications. Via the NativeDragManager and Clipboard classes, you can easily export your data in a multitude of formats, including PNG and CSV. Recently I had an project that utilized these features, and I figured it would be good to share the techniques with the community.
In particular this example, framed as a basic stock chart application, demonstrates the following features:
Native drag-and-drop with PNG images and custom image proxies.
Copy to Clipboard / Export with both PNG and CSV data formats – Right-click on the chart to get your options
Example code for customizing the HLOCChart class look-and-feel
These features were factored into ‘behavior’ classes so that they can (fairly) easily be applied to your own AIR apps.
Source is available by right-clicking and selecting ‘view-source’ in the application from anywhere but the chart.
James Ward created an excellent RIA Data Loading Benchmarking tool that compares the load, parse and rendering time of a number of RIA technologies including both AJAX and Flash based technologies. Its nice to see a well-designed tool spell out the performance differences of technologies. This should make it easier for Flash developers to explain to their CTO why AMF will save them money and result in a better app. Nice work!
In my last post, I wanted to distribute a sample AIR application via the user-friendly badge installation process. After taking a look at the available options, I came across an excellent Flash embedding solution for WordPress called Kimili. Kimili is a WordPress friendly wrapper on top of Geoff Stearns excellent SWFObject Javascript library.
I thought I would share my code snippet for my previous post in order to help the next person who was trying to get AIR badges in WordPress going:
Two side-notes:
The Kimili plugin delimits flashvars with semicolons bracketed by spaces (e.g. ” ; “). I’m not sure why it requires this odd syntax, but things won’t work if you eliminate the spaces.
I added a space betwen the closing bracket of the tag so that WordPress wouldn’t interpret it. The correct syntax should be “/]”.
The AIR windowing API offers some exciting new possibilities, and challenges, for Flash developers. With the Employee Directory Sample Application, we showcased a well-designed, real-world application that dynamically resizes itself to a changing content area. This is a powerful technique that simply isn’t possible within the confines of a browser window.
I thought it would be useful to distill this capability from the more complex directory application and provide a simple ‘kick-start’ application that demonstrates:
Leveraging transparent windows to create high-quality custom window chrome with drop-shadows.
Using the Flex Resize effect and event listeners to dynamically size a NativeWindow to the size of a changing content area
Simple PNG-centric CSS styling example with advanced text anti-aliasing applied.
You may install via the AIR badge below, or if you have less than 9,0,63, you will have to manually install the runtime and AIR file:
Source is available by right-clicking and selecting ‘view-source’ in the application.
One other factor with resizable applications not covered in this sample app is automatically keeping the application onscreen as the application resizes. This is a challenging problem that is addressed in the directory application (via a fairly convoluted solution), but is not covered here. Something I definitely hope to address more clearly in the future. Definitely check out the Employee Directory if you haven’t already.
Just thought I would announce the re-release of the Employee Directory AIR application on Labs. I am excited to show off what I think is a very useful corporate directory application that provides a better experience for finding fellow employees and conference rooms.
Technically, the application is probably not the best place for pure beginners to learn Flex and AIR, as it was built using best practices for extensible medium to large applications. That said, it is a great starting point for building your own corporate directory application – its very similar to what we’re using internally at Adobe.
Some of the AIR features demonstrated:
Offline data storage using SQL API’s
Resizable, transparent windows with automatic position management
Data synchronization and automatic application updates