Adobe AIR Overview

9,870 views

Published on

Overview of AIR, the APIs you get access to and how to build a simple Flex and HTML application with it. From there we will explore some of the tools available to make AIR development easier and faster. We’ll finish up with a few important usability guidelines and real world case studies of AIR projects.

Published in: Technology
0 Comments
11 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
9,870
On SlideShare
0
From Embeds
0
Number of Embeds
160
Actions
Shares
0
Downloads
341
Comments
0
Likes
11
Embeds 0
No embeds

No notes for slide

Adobe AIR Overview

  1. 1. AIR 101 Web Directions North 08 Andre Charland, Nitobi andre@nitobi.com Monday, February 4, 2008
  2. 2. About Me Andre Charland Co-Founder/CE0 @ Nitobi Usability & RIA Focus Author, Blogger, Skier Monday, February 4, 2008
  3. 3. About Nitobi Ajax and Flex Components and Services Founded in 1998 Revenue funded Over 1000+ customers worldwide 12 Employees Vancouver, BC Monday, February 4, 2008
  4. 4. Customers Monday, February 4, 2008
  5. 5. AIR? Cross OS Runtime Web developers can build desktop apps Supports: Flash, Flex, HTML, PDF, JavaScript Totally Free OS Level APIs Monday, February 4, 2008
  6. 6. AIR APIs and Features File I/O Local Storage Native Windowing System Notifications Menuing Auto Updates Online/Offline SQL Lite Database Detection Background Chrome Control Processes Monday, February 4, 2008
  7. 7. Neat Things... Call ActionScript directly from JavaScript HTML content in Flash Badge Install Air Aliases.js Use ActionScript Libraries Keyboard Shortcuts Monday, February 4, 2008
  8. 8. Technicalities Flash 9 WebKit (Safari) - Not a Browser Windows, Mac (Linux Coming Soon!) Not a Plug-In AIR is not Flex, Ajax, Flash...it’s a run-time Monday, February 4, 2008
  9. 9. How To’s Flex Builder 3 HTML/Ajax Monday, February 4, 2008
  10. 10. Application Descriptor File <?xml version=quot;1.0quot; encoding=quot;UTF-8quot;?> <application xmlns=quot;http://ns.adobe.com/air/application/1.0.M6quot;> <id>samples.flex.HelloWorld</id> <version>0.1</version> <filename>HelloWorld</filename> <initialWindow> <content>HelloWorld.swf</content> <visible>true</visible> <systemChrome>none</systemChrome> <transparent>true</transparent> <width>400</width> <height>200</height> </initialWindow> </application> Monday, February 4, 2008
  11. 11. File I/O • Setup a File object var myFile:File = File.appStorageDirectory; myFile = myFile.resolve( “contacts.xml” ); • Instantiate and FileStream object var myStream:FileStream = new FileStream(); • Setup the appropriate event listeners myStream.addEventListener( Event.COMPLETE, doReadData ); • Call FileStream.open() or FileStream.openAsync() with the appropriate m myStream.openAsync( myFile, FileMode.READ ); • Call the appropriate read and write methods • Close the file using FileStream.close() myStream.close(); Monday, February 4, 2008
  12. 12. Windowing Create a new Native Window var options:NativeWindowInitOptions = new NativeWindowInitOptions(); options.systemChrome = NativeWindowSystemChrome.STANDARD; options.transparent = false; var newWin:NativeWindow = new NativeWindow(options); Window Size: var maxOSSize:Point = NativeWindow.systemMaxSize; var minOSSize:Point = NativeWindow.systemMinSize; Monday, February 4, 2008
  13. 13. Service Monitor Include the external SWF Library <script type=quot;application/x-shockwave-flashquot; src=quot;servicemonitor.swfquot;></script> Check for the availability of a particular URL var monitor; function checkURLStatus(url) { ! var req = new air.URLRequest(url); ! monitor = new window.runtime.air.net.URLMonitor(req); ! monitor.pollInterval = 5000; ! monitor.addEventListener(air.StatusEvent.STATUS, showStatus); ! monitor.start(); Monday, February 4, 2008
  14. 14. Snitter http://snook.ca/snitter/ Monday, February 4, 2008
  15. 15. Scrutinizer http://about.stompernet.com/scrutinizer Monday, February 4, 2008
  16. 16. Analytics Reporting http://analytics.boulevart.be/ http://analytics.boulevart.be/ Monday, February 4, 2008
  17. 17. Opportunities Companion Applications API Libraries File Libraries Advanced features – syncing, etc.. Casual games Downloadable games Monday, February 4, 2008
  18. 18. Usability Gotchas Keyboard shortcuts (tab, enter…) Throbbers / Activity indicators – no spinner Allow text to be copied Add functions for minimize, move, resize, close when ‘chromeless’ Mouse hints, invitations, tool tips Monday, February 4, 2008
  19. 19. Limitations in 1.0 No support for hardware acceleration (3D games, video compositing tools, video encoders, etc) No access to native libraries (DLLs, etc) Cannot connect to devices (other than web cams and microphones) Accessibility support is limited Printing support is limited Limited localization in 1.0 Monday, February 4, 2008
  20. 20. Questions:) andre@nitobi.com http://blogs.nitobi.com/andre http://www.nitobi.com Monday, February 4, 2008

×