Advanced Desktop Development
with Adobe AIR

Mike Chambers


Principal Product Manager
Flash Platform
Overview



•   File Monitoring

•   Volume Monitoring

•   Data / Object Persistence

•   Caching Assets for offline and pe...
as3corelib
File Monitoring




•   Detect when les are created, deleted and / or modi ed

•   No built in way to monitor les

•   Can...
as3corelib : FileMonitor
Volume Monitoring




    Detect when a volume is added or removed from system



      •   USB and Firewire Drives

     ...
Volume Monitoring



      File.getRootDirectories() is inconsistent across platforms


              Windows :
          ...
as3corelib : VolumeMonitor
“Athena”
“Athena” : StorageVolume APIs




•   “Athena” API

•   Monitors mounting and un-mounting of storage volumes

•   USB / Fi...
“Athena” : StorageVolume Events
Caching Assets




•   Enable for offline use

•   Improved performance even when online

•   Useful for images, data which ...
as3corelib : ResourceCache
Data / Object Persistence




•   Archive Objects directly to File system

•   Easy to implement

•   Can be used as custo...
Syncing Offline Data




•   Sync local data additions / changes to server

•   Useful for offline apps, or applications that ...
Add Image


                              Add to Queue


                                             Online
 Write to    ...
Working with Native Processes / Applications




•   Currently no formal API for working with native processes

•   Comman...
CommandProxy




•   Proof of concept

•   Written in C#, ActionScript 3.0

•   Could be written in any desktop language
“Athena” : NativeProcess API




•   New API in AIR 2.0

•   Can call and communicate with external applications

•   Requ...
“Athena” : NativeProcess
AIR 2.0 : Launch Default




     •   Allows le to be launched with default application

     •   Works in any AIR applica...
Mike Chambers

                www.mikechambers.com
                     twitter.com/mesh
                     mesh@adobe....
Advanced Desktop Development
Upcoming SlideShare
Loading in …5
×

Advanced Desktop Development

2,647 views

Published on

Published in: Technology, Business
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,647
On SlideShare
0
From Embeds
0
Number of Embeds
47
Actions
Shares
0
Downloads
0
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide

Advanced Desktop Development

  1. 1. Advanced Desktop Development with Adobe AIR Mike Chambers Principal Product Manager Flash Platform
  2. 2. Overview • File Monitoring • Volume Monitoring • Data / Object Persistence • Caching Assets for offline and performance • Syncing offline data online • Working with native applications • AIR 2.0 Sneaks
  3. 3. as3corelib
  4. 4. File Monitoring • Detect when les are created, deleted and / or modi ed • No built in way to monitor les • Can be difficult due to possibility of le being deleted, moved, etc...
  5. 5. as3corelib : FileMonitor
  6. 6. Volume Monitoring Detect when a volume is added or removed from system • USB and Firewire Drives • Cameras / Mobile Devices (that mount as drives) • CD / DVD Roms
  7. 7. Volume Monitoring File.getRootDirectories() is inconsistent across platforms Windows : Array of Root Drives / Files Mac / Linux : Array with single root “/” File
  8. 8. as3corelib : VolumeMonitor
  9. 9. “Athena”
  10. 10. “Athena” : StorageVolume APIs • “Athena” API • Monitors mounting and un-mounting of storage volumes • USB / Firewire • Cameras and Devices that mount as drives
  11. 11. “Athena” : StorageVolume Events
  12. 12. Caching Assets • Enable for offline use • Improved performance even when online • Useful for images, data which does not degrade with age
  13. 13. as3corelib : ResourceCache
  14. 14. Data / Object Persistence • Archive Objects directly to File system • Easy to implement • Can be used as custom le format for application
  15. 15. Syncing Offline Data • Sync local data additions / changes to server • Useful for offline apps, or applications that may have poor connections
  16. 16. Add Image Add to Queue Online Write to Write to File Array Send Next Image Offline Currently Yes Sending? Do Nothing No Online? Pause No Sending Yes Send to Server Send Yes No Successful Remove Remove from from File Array
  17. 17. Working with Native Processes / Applications • Currently no formal API for working with native processes • CommandProxy Pattern : extend via proxy / helper app • Requires custom installer • Can use Adobe AIR silent install
  18. 18. CommandProxy • Proof of concept • Written in C#, ActionScript 3.0 • Could be written in any desktop language
  19. 19. “Athena” : NativeProcess API • New API in AIR 2.0 • Can call and communicate with external applications • Requires application be distributed as native installer (no AIR les) • Cannot execute applications within application directory • Must add “extendedDesktop” to support pro les
  20. 20. “Athena” : NativeProcess
  21. 21. AIR 2.0 : Launch Default • Allows le to be launched with default application • Works in any AIR application • File cannot be in application directory • File type blacklist
  22. 22. Mike Chambers www.mikechambers.com twitter.com/mesh mesh@adobe.com

×