Adobe Systems AIR 1.0
A blinding debut release, Adobe AIR 1.0 lowers the skills requirements and costs for desktop deployment by leveraging a cross-platform runtime (from a single code base) and familiar Web technologies. Developers can take advantage of streamlined interfaces and a persistent local data store to give rich Web apps a native look and feel — including offline functionality.
Adobe's rich internet application (RIA) toolkit lifts Flash and AJAX out of the browser and on to the desktop. Adobe AIR 1.0 shines with light technical requirements and good features, but security and OS integration could go deeper.
Adobe AIR 1.0 brings new hope to Web developers looking to combine the global connectedness of browser-based applications with the persistence and functionality of first-class, local desktop apps.
The resulting application gains access to OS features such as dragging and dropping to and from the local file system, clipboard access for cutting and pasting between AIR and other applications, network connectivity, encrypted local storage and, perhaps most noteworthy, offline functionality. Thanks to AIR's persistent, local SQLite data store, AIR apps continue to function without a network connection.
Further, AIR apps don't require Web developers to learn anything new. They can easily create AIR apps using the tools and techniques they already know. Because AIR is cross-OS compatible, the same application code can be deployed to Windows, Mac and, eventually, Linux systems. An alpha version of AIR for Linux is available at Adobe Labs.
Pieces of AIR
Adobe AIR comprises several components. The SDK is a command line toolkit for packaging and deploying Web applications as AIR apps. It includes a schema template for generating the AIR manifests (which define various properties of each application including name, security certificate, and files included within the package), APIs for the framework, a service monitor and a command line debugger that lets you do some testing without first needing to package up your app. The entire lot is available for free and open sourced under the Mozilla Public Licence.
The underlying application components are packed into an AIR installer file, which is little more than a zip file containing program assets, the XML manifest and a digital certificate to verify authenticity.
The command line tools are easy enough to work with, and you can use any text editor to create an AIR app. Adobe provides plug-ins for creating AIR applications in Flash CS3 and Dreamweaver CS3, as well as third-party tools such as Aptana Studio.
However, we recommend you try Adobe's new commercial development tool, the Flex Builder 3.0 IDE. Based on Eclipse, Flex Builder provides easy graphical tools for laying out GUIs, binding to servers and data sources and generating the underlying MXML code.
AIR apps can take advantage of protocols including FTP, AMF (ActionScript Messaging Format), JSON, SOAP and RTMP (Real Time Messaging Protocol for streaming media), and they can communicate with Adobe LiveCycle and BlazeDS servers using server-side RPC and messaging calls.
Clipboard access and drag-and-drop interaction with the file system notwithstanding, AIR's access to native code libraries and the underlying OS could be deeper. For example, AIR lacks a USB API, and although printing is supported, printing of images is limited to raster renderings versus full-vector support.
AIR's independence from native libraries provides a cleaner experience, but access to native code could provide not only better performance (particularly for calculation-intensive processes), but also a richer set of pathways to existing code/routines and the ability to launch local apps for specific file types.
Similarly, although security is thoughtfully addressed, it too could go further. First the good news. Local storage is protected by 128-bit encryption. AIR apps can be digitally signed and verified at runtime (via VeriSign or Thawte certificates). Administrators can control (via OS registry key) which AIR apps may be installed on a local system (trusted source only, for example, or none at all), and whether they can be updated automatically or uninstalled.
And because AIR apps are treated as native, personal firewalls can examine and block AIR applications on an individual basis (versus merely identifying the AIR runtime).
However, given the level of potential exposure — AIR can write to any location on the hard disk and gain immediate network access — we would like to see Adobe tighten the controls over system access. Although self-signed apps alert users with an "unknown signature" warning, these unverifiable apps, if installed, gain the same permissions and unfettered access to the underlying OS as verified apps.
Because AIR is in essence a proxy, Adobe could implement ways to control, say, whether a cookie may be written outside the local directory, or when an existing file may be overwritten. Let the user decide what level of control to apply, but we could use something better than the existing open-door policy. We hope Adobe will see fit in a future version to allow users to fine-tune permissions for each app during install.
Adobe does offer best-practice guidelines for developers. Nevertheless, we submit that many Web developers lack the technical savvy to effectively safeguard security. It's only a matter of time before some clever ne'er-do-wells begin exploiting remote data sources through local access vulnerabilities unknowingly left open to attack.
That said, AIR does fortify against malicious code injections. The two-level sandbox framework, which restricts the access of untrusted application routines to AIR's APIs, does help protect developers from themselves.
Grab some AIR
AIR will not be suitable for every application. Personally, we're quite content to use a browser for most things. But for enterprise dashboards and occasionally connected apps, as well as for many consumer-facing and marketing sites, breaking free of browser-badging and Web constraints makes a lot of sense.
On the enterprise front, companies such as Model Metrics (for Salesforce.com) and Business Objects are busy breathing AIR into their systems. There are also a number of projects under way to let AIR eventually tap native code via cross-compilation with ActionScript (for example, to migrate existing C++ or .Net applications).
Easy migration of legacy apps running on a freely available distribution of Linux (assuming Adobe follows through on the port) will be irresistible to many companies, and Adobe AIR's ability to reduce hurdles to desktop application deployment makes it a must-see. Still, we think we're seeing only the first hint of turbulence in a coming wave of disruption.
Adobe is far from the only company clamouring for a piece of the RIA action. But we find Adobe AIR 1.0 well ahead of the pack today, in functionality, ease of execution, and overall efficacy of the final product. AIR blurs the distinction between Web, desktop and user devices in ways that we've only begun to explore. Oh, and did we mention that it's free?
Join the newsletter!
SanDisk MicroSDXC™ for Nintendo® Switch™
Nespresso Creatista Coffee Machine
Dyson Supersonic™ Hair Dryer Fuchsia/Iron
Breitling Superocean Heritage Chronographe 44
Bang and Olufsen BeoVision 14
WD MY PASSPORT™ Gaming Storage
WD MY PASSPORT™ X Gaming Storage
cloudandco Smart Cane
Panasonic OLED 4K Ultra HD TV - TH-55EZ950U
Panasonic OLED 4K Ultra HD TV - TH-77EZ1000U
Toys for Boys
Onyx Smart Walkie Talkie
Propel Star Wars T-65 X-Wing Drone
Ubiquiti Network’s Front Row Camera
Lego Mindstorms EV3
Bose SoundLink Micro
Google Daydream View VR Headset
Leica M10 Digital Rangefinder Camera
LaCie Rugged USB-C Portable Hard Drive
Dearear Endear In-ear Wireless Earphones
Amazon Echo Bluetooth Speaker
iRobot Roomba 980 Vaccum Cleaning Robot
Panasonic Hi-Fi - SC-UA7GS-K
Nest Protect Smart Smoke Alarm
Toffee Bags Commuter Satchel
PETKIG Go Smart Dog Leash
Panasonic 4K UHD Blu-Ray Player and Full HD Recorder with Netflix - UBT1GL-K
WD MY CLOUD™ HOME Personal Cloud Storage
Xbox One X
Belkin Pocket Power 10,000mAh
3SIXT 3-in-1 Smartphone Lens Kit
Tile Pro Bluetooth Tracker
Kogan Bluetooth Soundbar
Razer DeathAdder Expert Ergonomic Gaming Mouse
Logitech Doodle Collection Wireless Mouse
Lexon Flip Alarm Clock
Panasonic Portable Splashproof Fun - RF-D20U
Urbanworx Full HD Action Camera
Ikea NORDMÄRKE Wireless Charging Pad
Raspberry Pi Starter Kit
Most Popular Reviews
- 1 Huawei Mate 10 Pro Review: A solid winter flagship that cribs from the best
- 2 Google Pixel 2 review: not quite 'pixel perfect' but damn close
- 3 Huawei Nova 2i review: Flagship features get smuggled into the mid-tier
- 4 Moto X4 review: This is what a world without MotoMods looks like
- 5 Giabyte Aorus X9 Gaming Laptop review: Full, in-depth review
Latest News Articles
- Microsoft delves deeper into AI with new kit bag of tools
- Samsung unifies smart-home products with Bixby 2.0
- Dropbox go pro with Dropbox Profesional
- Intel launches AI-driven anti-money laundering solution
- Nvidia unveils Pegasus, an AI computer that can power fully autonomous vehicles
PCW Evaluation Team
It’s easy to set up, it’s compact and quiet when printing and to top if off, the print quality is excellent. This is hands down the best printer I’ve used for printing labels.
Brainstorming, innovation, problem solving, and negotiation have all become much more productive and valuable if people can easily collaborate in real time with minimal friction.
The print quality also does not disappoint, it’s clear, bold, doesn’t smudge and the text is perfectly sized.
The Huddle Board’s built in program; Sharp Touch Viewing software allows us to easily manipulate and edit our documents (jpegs and PDFs) all at the same time on the dashboard.
The biggest perks for me would be that it comes with easy to use and comprehensive programs that make the collaboration process a whole lot more intuitive and organic
I rate the printer as a 5 out of 5 stars as it has been able to fit seamlessly into my busy and mobile lifestyle.
- Huawei Mate 10 Pro review
- Get set for Amazon Australia Black Friday launch
- Destiny 2 PC review
- What's the difference between an Intel Core i3, i5 and i7?
- Laser vs. inkjet printers: which is better?
Product Launch Showcase
- FTGraduate C# DeveloperNSW
- FTPermanent .Net Developer roleACT
- FTProcurement AdvisorACT
- CCChange ManagerNSW
- FTData AnalystOther
- FTChange Manager- Rail / Fleet MaintenanceOther
- FTSAP Data AnalystOther
- CCProject Implementation Support - Telecom IndustryVIC
- TPSAP BW ConsultantQLD
- FTLinux Systems EngineerOther
- FTManager, PortfolioOther
- FTHadoop DeveloperSA
- FTSolution ArchitectOther
- FTSolution Designer - WealthOther
- FTFacilities/Capacity EngineerOther
- FTService Desk Engineer/IT Help desk Support - Multiple positionsVIC
- CCLead Pega Systems ArchitectVIC
- FTSecurity System AnalystOther
- FTMICROSOFT DYNAMICS CRM DEVELOPER - BASELINE CLEARANCE REQUIRED - CANBERRAACT
- FTJunior Infrastructure EngineerACT
- FTNetwork Integration SpecialistOther
- CCMultiple System Engineers - Data Centre - TelcoVIC
- CCLevel 1 Service deskNSW
- FTSystems Engineer - Identity & AutomationQLD
- FTData Centre / Hosting Lead - $800 per dayOther