SlideShare a Scribd company logo
1 of 20
Download to read offline
AIR 101
                           Web Directions North 08
                              Andre Charland, Nitobi
                                andre@nitobi.com




Monday, February 4, 2008
About Me


                           Andre Charland

                           Co-Founder/CE0 @ Nitobi

                           Usability & RIA Focus

                           Author, Blogger, Skier




Monday, February 4, 2008
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
Customers




Monday, February 4, 2008
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
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
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
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
How To’s



                           Flex Builder 3

                           HTML/Ajax




Monday, February 4, 2008
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
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
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
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
Snitter




                           http://snook.ca/snitter/
Monday, February 4, 2008
Scrutinizer




                       http://about.stompernet.com/scrutinizer
Monday, February 4, 2008
Analytics Reporting


                                                            http://analytics.boulevart.be/




                           http://analytics.boulevart.be/
Monday, February 4, 2008
Opportunities
                           Companion Applications

                           API Libraries

                           File Libraries

                           Advanced features – syncing, etc..

                           Casual games

                           Downloadable games


Monday, February 4, 2008
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
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
Questions:)


                           andre@nitobi.com

                           http://blogs.nitobi.com/andre

                           http://www.nitobi.com




Monday, February 4, 2008

More Related Content

Viewers also liked

Viewers also liked (9)

SkyTeam
SkyTeamSkyTeam
SkyTeam
 
From Brick Mortar To Online Click Organisation
From Brick Mortar To Online Click OrganisationFrom Brick Mortar To Online Click Organisation
From Brick Mortar To Online Click Organisation
 
Air Cargo : Today & Tomorrow
Air Cargo : Today & TomorrowAir Cargo : Today & Tomorrow
Air Cargo : Today & Tomorrow
 
Air Cargo 101
Air Cargo 101Air Cargo 101
Air Cargo 101
 
Operations of air cargo
Operations of air cargoOperations of air cargo
Operations of air cargo
 
Air cargo overview ppt
Air cargo overview pptAir cargo overview ppt
Air cargo overview ppt
 
Air cargo logistics
Air cargo logisticsAir cargo logistics
Air cargo logistics
 
100th Anniversary of Air Cargo
100th Anniversary of Air Cargo100th Anniversary of Air Cargo
100th Anniversary of Air Cargo
 
Delta Airlines Business Strategy
Delta Airlines Business StrategyDelta Airlines Business Strategy
Delta Airlines Business Strategy
 

Similar to Adobe AIR Overview

Developing with Windows Live Spaces
Developing with Windows Live SpacesDeveloping with Windows Live Spaces
Developing with Windows Live Spacesgoodfriday
 
Watir Presentation Sumanth Krishna. A
Watir Presentation   Sumanth Krishna. AWatir Presentation   Sumanth Krishna. A
Watir Presentation Sumanth Krishna. ASumanth krishna
 
RIA meets Desktop
RIA meets DesktopRIA meets Desktop
RIA meets DesktopPeter Elst
 
HTML5 for Rich User Experience
HTML5 for Rich User ExperienceHTML5 for Rich User Experience
HTML5 for Rich User ExperienceMahbubur Rahman
 
Next Generation Memory Forensics
Next Generation Memory ForensicsNext Generation Memory Forensics
Next Generation Memory ForensicsAndrew Case
 
Building Desktop RIAs with PHP, HTML & Javascript in AIR
Building Desktop RIAs with PHP, HTML & Javascript in AIRBuilding Desktop RIAs with PHP, HTML & Javascript in AIR
Building Desktop RIAs with PHP, HTML & Javascript in AIRfunkatron
 
Web components Introduction
Web components IntroductionWeb components Introduction
Web components IntroductionEugenio Romano
 
Introduction to PHP (Casino Affiliate Convention 2008)
Introduction to PHP (Casino Affiliate Convention 2008)Introduction to PHP (Casino Affiliate Convention 2008)
Introduction to PHP (Casino Affiliate Convention 2008)Ivo Jansch
 
Keyword Driven Framework using WATIR
Keyword Driven Framework using WATIRKeyword Driven Framework using WATIR
Keyword Driven Framework using WATIRNivetha Padmanaban
 
Html 5 in a big nutshell
Html 5 in a big nutshellHtml 5 in a big nutshell
Html 5 in a big nutshellLennart Schoors
 
Enyo Hackathon Presentation
Enyo Hackathon PresentationEnyo Hackathon Presentation
Enyo Hackathon PresentationBen Combee
 
Facets of applied smw
Facets of applied smwFacets of applied smw
Facets of applied smwJesse Wang
 
Fire Watir Script Generator Barcamp
Fire Watir Script Generator BarcampFire Watir Script Generator Barcamp
Fire Watir Script Generator Barcampangrez
 
Silverlight 4 @ MSDN Live
Silverlight 4 @ MSDN LiveSilverlight 4 @ MSDN Live
Silverlight 4 @ MSDN Livegoeran
 
Advanced Web Development
Advanced Web DevelopmentAdvanced Web Development
Advanced Web DevelopmentRobert J. Stein
 
20100707 e z_rmll_gig_v1
20100707 e z_rmll_gig_v120100707 e z_rmll_gig_v1
20100707 e z_rmll_gig_v1Gilles Guirand
 
Top 10 HTML5 Features for Oracle Cloud Developers
Top 10 HTML5 Features for Oracle Cloud DevelopersTop 10 HTML5 Features for Oracle Cloud Developers
Top 10 HTML5 Features for Oracle Cloud DevelopersBrian Huff
 
Thadomal IEEE-HTML5-Workshop
Thadomal IEEE-HTML5-WorkshopThadomal IEEE-HTML5-Workshop
Thadomal IEEE-HTML5-WorkshopRomin Irani
 

Similar to Adobe AIR Overview (20)

Developing with Windows Live Spaces
Developing with Windows Live SpacesDeveloping with Windows Live Spaces
Developing with Windows Live Spaces
 
Watir Presentation Sumanth Krishna. A
Watir Presentation   Sumanth Krishna. AWatir Presentation   Sumanth Krishna. A
Watir Presentation Sumanth Krishna. A
 
RIA meets Desktop
RIA meets DesktopRIA meets Desktop
RIA meets Desktop
 
HTML5 for Rich User Experience
HTML5 for Rich User ExperienceHTML5 for Rich User Experience
HTML5 for Rich User Experience
 
Next Generation Memory Forensics
Next Generation Memory ForensicsNext Generation Memory Forensics
Next Generation Memory Forensics
 
Building Desktop RIAs with PHP, HTML & Javascript in AIR
Building Desktop RIAs with PHP, HTML & Javascript in AIRBuilding Desktop RIAs with PHP, HTML & Javascript in AIR
Building Desktop RIAs with PHP, HTML & Javascript in AIR
 
Web components Introduction
Web components IntroductionWeb components Introduction
Web components Introduction
 
Introduction to PHP (Casino Affiliate Convention 2008)
Introduction to PHP (Casino Affiliate Convention 2008)Introduction to PHP (Casino Affiliate Convention 2008)
Introduction to PHP (Casino Affiliate Convention 2008)
 
Keyword Driven Framework using WATIR
Keyword Driven Framework using WATIRKeyword Driven Framework using WATIR
Keyword Driven Framework using WATIR
 
Html 5 in a big nutshell
Html 5 in a big nutshellHtml 5 in a big nutshell
Html 5 in a big nutshell
 
Enyo Hackathon Presentation
Enyo Hackathon PresentationEnyo Hackathon Presentation
Enyo Hackathon Presentation
 
Facets of applied smw
Facets of applied smwFacets of applied smw
Facets of applied smw
 
Fire Watir Script Generator Barcamp
Fire Watir Script Generator BarcampFire Watir Script Generator Barcamp
Fire Watir Script Generator Barcamp
 
Widgets
WidgetsWidgets
Widgets
 
Silverlight 4 @ MSDN Live
Silverlight 4 @ MSDN LiveSilverlight 4 @ MSDN Live
Silverlight 4 @ MSDN Live
 
Advanced Web Development
Advanced Web DevelopmentAdvanced Web Development
Advanced Web Development
 
Chapter11
Chapter11Chapter11
Chapter11
 
20100707 e z_rmll_gig_v1
20100707 e z_rmll_gig_v120100707 e z_rmll_gig_v1
20100707 e z_rmll_gig_v1
 
Top 10 HTML5 Features for Oracle Cloud Developers
Top 10 HTML5 Features for Oracle Cloud DevelopersTop 10 HTML5 Features for Oracle Cloud Developers
Top 10 HTML5 Features for Oracle Cloud Developers
 
Thadomal IEEE-HTML5-Workshop
Thadomal IEEE-HTML5-WorkshopThadomal IEEE-HTML5-Workshop
Thadomal IEEE-HTML5-Workshop
 

More from AndreCharland

Kees and Clair Hut Grand Opening - Spearhead Huts Society
Kees and Clair Hut Grand Opening - Spearhead Huts SocietyKees and Clair Hut Grand Opening - Spearhead Huts Society
Kees and Clair Hut Grand Opening - Spearhead Huts SocietyAndreCharland
 
Spearhead fundraising 2019
Spearhead fundraising 2019Spearhead fundraising 2019
Spearhead fundraising 2019AndreCharland
 
PhoneGap Day EU 2012 Welcome
PhoneGap Day EU 2012 WelcomePhoneGap Day EU 2012 Welcome
PhoneGap Day EU 2012 WelcomeAndreCharland
 
Phone gap day welcome 2012
Phone gap day welcome 2012Phone gap day welcome 2012
Phone gap day welcome 2012AndreCharland
 
Phone gap Stats & Growth
Phone gap Stats & GrowthPhone gap Stats & Growth
Phone gap Stats & GrowthAndreCharland
 
PhoneGap Build Presentation at Deploy2010
PhoneGap Build Presentation at Deploy2010PhoneGap Build Presentation at Deploy2010
PhoneGap Build Presentation at Deploy2010AndreCharland
 
Calendar Finalto Distribute Small
Calendar Finalto Distribute SmallCalendar Finalto Distribute Small
Calendar Finalto Distribute SmallAndreCharland
 
Rad Boob Club Calendar 2010
Rad Boob Club Calendar 2010Rad Boob Club Calendar 2010
Rad Boob Club Calendar 2010AndreCharland
 
InsideRIA Outlook for 2009
InsideRIA Outlook for 2009InsideRIA Outlook for 2009
InsideRIA Outlook for 2009AndreCharland
 
Ajax in AIR from On AIR Tour Europe
Ajax in AIR from On AIR Tour EuropeAjax in AIR from On AIR Tour Europe
Ajax in AIR from On AIR Tour EuropeAndreCharland
 
Ajax Development With Dreamweaver
Ajax Development With DreamweaverAjax Development With Dreamweaver
Ajax Development With DreamweaverAndreCharland
 
Ajax and JavaScript Bootcamp
Ajax and JavaScript BootcampAjax and JavaScript Bootcamp
Ajax and JavaScript BootcampAndreCharland
 
Voices That Matter Ajax Overview
Voices That Matter  Ajax OverviewVoices That Matter  Ajax Overview
Voices That Matter Ajax OverviewAndreCharland
 
Enterprise AIR Development for JavaScript Developers
Enterprise AIR Development for JavaScript DevelopersEnterprise AIR Development for JavaScript Developers
Enterprise AIR Development for JavaScript DevelopersAndreCharland
 
Blogging For Business
Blogging For BusinessBlogging For Business
Blogging For BusinessAndreCharland
 
Web Usability in the Enterprise with Ajax
Web Usability in the Enterprise with AjaxWeb Usability in the Enterprise with Ajax
Web Usability in the Enterprise with AjaxAndreCharland
 
Ajax Usability for AjaxWorld
Ajax Usability for AjaxWorldAjax Usability for AjaxWorld
Ajax Usability for AjaxWorldAndreCharland
 
Using the Tools of Web 2.0 for Marketing
Using the Tools of Web 2.0 for MarketingUsing the Tools of Web 2.0 for Marketing
Using the Tools of Web 2.0 for MarketingAndreCharland
 
GIS Applications on the Web
GIS Applications on the WebGIS Applications on the Web
GIS Applications on the WebAndreCharland
 

More from AndreCharland (19)

Kees and Clair Hut Grand Opening - Spearhead Huts Society
Kees and Clair Hut Grand Opening - Spearhead Huts SocietyKees and Clair Hut Grand Opening - Spearhead Huts Society
Kees and Clair Hut Grand Opening - Spearhead Huts Society
 
Spearhead fundraising 2019
Spearhead fundraising 2019Spearhead fundraising 2019
Spearhead fundraising 2019
 
PhoneGap Day EU 2012 Welcome
PhoneGap Day EU 2012 WelcomePhoneGap Day EU 2012 Welcome
PhoneGap Day EU 2012 Welcome
 
Phone gap day welcome 2012
Phone gap day welcome 2012Phone gap day welcome 2012
Phone gap day welcome 2012
 
Phone gap Stats & Growth
Phone gap Stats & GrowthPhone gap Stats & Growth
Phone gap Stats & Growth
 
PhoneGap Build Presentation at Deploy2010
PhoneGap Build Presentation at Deploy2010PhoneGap Build Presentation at Deploy2010
PhoneGap Build Presentation at Deploy2010
 
Calendar Finalto Distribute Small
Calendar Finalto Distribute SmallCalendar Finalto Distribute Small
Calendar Finalto Distribute Small
 
Rad Boob Club Calendar 2010
Rad Boob Club Calendar 2010Rad Boob Club Calendar 2010
Rad Boob Club Calendar 2010
 
InsideRIA Outlook for 2009
InsideRIA Outlook for 2009InsideRIA Outlook for 2009
InsideRIA Outlook for 2009
 
Ajax in AIR from On AIR Tour Europe
Ajax in AIR from On AIR Tour EuropeAjax in AIR from On AIR Tour Europe
Ajax in AIR from On AIR Tour Europe
 
Ajax Development With Dreamweaver
Ajax Development With DreamweaverAjax Development With Dreamweaver
Ajax Development With Dreamweaver
 
Ajax and JavaScript Bootcamp
Ajax and JavaScript BootcampAjax and JavaScript Bootcamp
Ajax and JavaScript Bootcamp
 
Voices That Matter Ajax Overview
Voices That Matter  Ajax OverviewVoices That Matter  Ajax Overview
Voices That Matter Ajax Overview
 
Enterprise AIR Development for JavaScript Developers
Enterprise AIR Development for JavaScript DevelopersEnterprise AIR Development for JavaScript Developers
Enterprise AIR Development for JavaScript Developers
 
Blogging For Business
Blogging For BusinessBlogging For Business
Blogging For Business
 
Web Usability in the Enterprise with Ajax
Web Usability in the Enterprise with AjaxWeb Usability in the Enterprise with Ajax
Web Usability in the Enterprise with Ajax
 
Ajax Usability for AjaxWorld
Ajax Usability for AjaxWorldAjax Usability for AjaxWorld
Ajax Usability for AjaxWorld
 
Using the Tools of Web 2.0 for Marketing
Using the Tools of Web 2.0 for MarketingUsing the Tools of Web 2.0 for Marketing
Using the Tools of Web 2.0 for Marketing
 
GIS Applications on the Web
GIS Applications on the WebGIS Applications on the Web
GIS Applications on the Web
 

Recently uploaded

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 

Recently uploaded (20)

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 

Adobe AIR Overview

  • 1. AIR 101 Web Directions North 08 Andre Charland, Nitobi andre@nitobi.com Monday, February 4, 2008
  • 2. About Me Andre Charland Co-Founder/CE0 @ Nitobi Usability & RIA Focus Author, Blogger, Skier Monday, February 4, 2008
  • 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
  • 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. 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. 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. 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. How To’s Flex Builder 3 HTML/Ajax Monday, February 4, 2008
  • 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. 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. 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. 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. Snitter http://snook.ca/snitter/ Monday, February 4, 2008
  • 15. Scrutinizer http://about.stompernet.com/scrutinizer Monday, February 4, 2008
  • 16. Analytics Reporting http://analytics.boulevart.be/ http://analytics.boulevart.be/ Monday, February 4, 2008
  • 17. Opportunities Companion Applications API Libraries File Libraries Advanced features – syncing, etc.. Casual games Downloadable games Monday, February 4, 2008
  • 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. 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. Questions:) andre@nitobi.com http://blogs.nitobi.com/andre http://www.nitobi.com Monday, February 4, 2008