SlideShare une entreprise Scribd logo
1  sur  20
Télécharger pour lire hors ligne
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

Contenu connexe

En vedette (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
 

Similaire à 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
 

Similaire à 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
 

Plus de 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
 

Plus de 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
 

Dernier

Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 

Dernier (20)

DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 

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