JUGAT Adobe Technology Platform for Rich Internet Applications Dieter Hovorka Sr.Systems Engineer Technical Sales dieter.hovorka@adobe.com May 2008 2006 Adobe Systems Incorporated. All Rights Reserved. 1
Adobe revolutionizes how the world engages with ideas and information
Customer Expectations have changed Explosion in Digital Content Personal publishing and social networks Multiple devices
Disruptive Innovation 1984 PostScript 1990 Creative Applications 1993 Reader 1997 Flash 2008 Adobe AIR
Widest Reach in the World Adobe technologies reach more desktop and devices than any other OS or runtime For over 10 years Adobe has reliably delivered clients that provide consistent, high quality experiences across operating systems
Widest Reach in the World Adobe technologies reach 700+ million PCs and 300+ million devices. Flash has 99% reach on connected PCs and 8 million installs per day. There are 250,000,000 PDF files on the web.
Flash Player Adoption 100 90 80 70 60 Flash Player 9 50 40 Flash Player 8 30 20 Flash Player 7 10 0 3 months 6 months 9 months 12 months Source: NPD, June 2006
Happy Birthday, Flash joecartoon.com
Applications have evolved Global 2004 WEB APPLICATIONS REACH 1998 RICH INTERNET APPLICATIONS Local MAINFRAME 1992 CLIENT/SERVER Text UI RICH Integrated media GUI
Adobe Technology Platform Applications Adobe Media Player Adobe Buzzword Acrobat Connect Designer/Developer Tools Clients Adobe AIR Adobe Flash Player Creative Suite 3 Frameworks Ajax Flex Servers/Services Flex Builder LiveCycle ColdFusion Flash Media Server Flash Cast Scene7
Adobe AIR 1.0 Dieter Hovorka Sr.Systems Engineer Technical Sales dieter.hovorka@adobe.com May 2008 11
Adobe AIR allows web developers to use existing technologies to build and deploy rich Internet applications to the desktop.
The ABCs of AIR Always There, Anywhere Branded Experiences Convenient Desktop Functionality Data Access Efficient Development and Delivery
The Web changed business requirements Applications must be built faster by fewer people Applications must reuse existing infrastructure and assets Applications must be flexible to support changing requirements
Rich Applications for Consumers Businesses
Applications reach browser, desktop, and devices
Adobe AIR Features Rich Applications Rich media and video Custom chrome and transparency Desktop integration (Drag and drop, Background, Notifications, Clipboard) Broad Reach Windows/Macintosh/Linux Universal application installer On/offline with network detection Local file access and embedded database Designer and Developer Productivity Existing Tools: Flex, Flash, Dreamweaver, Ajax Frameworks Reuse existing assets Creative suite Integration Application updates Proven Technology Integrated HTML/Flash/PDF AJAX: Full WebKit HTML engine Flex/Flash: Full Flash Player 9 Embedded SQL database Robust application security
Adobe AIR Application Stack HTML HTML JavaScript XML CSS Flash PDF Flash Flex ActionScript XML Audio Video HTML PDF Cross-OS Application Integrated Rendering Integrated DOMs & Scripting File System Access Network Detection Notifications Application Update Drag and Drop Local Database... Adobe AIR APIs Mac, Windows, Linux & Device OS
How Flex Works on the Desktop Flex SDK Flex Builder IDE Desktop Files SQLite Notifications Clipboard AIR Client Runtime MXML ActionScript Flex Class Library SOAP HTTP/S AMF/S RTMP/S Compile & Package Web Server XML/HTTP REST SOAP Web Services LC Data Services J2EE Application Server Existing Applications & Infrastructure
AIR Application Installation and Management Seamless Install -- deploy applications from a web server Web Launcher -- Invoke applications from the web Adobe AIR uses auto-update to keep itself current AIR Applications can use an API to manage updates Simplify delivery of patches and updates Enable iterative development and deployment
Universal Application Installer.air installer contains all application files Application files are cross platform web technologies SWF, HTML, PNG, XML, etc. The same.air file installs Windows, Macintosh, and Linux The installation process creates OS specific executables that allow the AIR application to behave like a native application
Enforcing Secure Application Installation Privileges: AIR Applications have full desktop application privileges read/write files, background execution, full network access Administrator can limit application install and other sensitive capabilities Installation: All applications must be signed by the creator Mandatory, trusted install process http://download.macromedia.com/pub/labs/air/air_security.pdf http://download.macromedia.com/pub/labs/air/air_htmlsecurity.pdf
HTML and Flash Integration Integrated rendering pipeline Filters Visual effects Function level invocation across HTML and Flash engines Flash classes can be used directly from JavaScript JavaScript classes can be used directly from Flash AIRAliases.js Abstracts out runtime.flash.* references Can be modified, added to, etc.
WebKit HTML Engine Open Source Engine Web class HTML engine with full Ajax support and web compatibility Used in Safari, KHTML Benefits of WebKit Open Source Proven Small Existing Mobile/Device Support
Rich Media and Video Codec support including H.264 video, AAC audio, VP6, MP3, and Sorenson Hardware acceleration for full-screen video Transparency and effects to video Support for DRM
Custom Chrome and Transparent Applications Window Chrome Use native OS window chrome Use custom chrome implemented by application Transparent Transparent region can choose to receive or pass through mouse clicks Design windows of any shape Enables complete control and branding of user interface The developer can provide custom window controls
Local File Access Create and delete files and directories Copy and move files and directories List the content of directories Get system information on files and directories Read and write text or binary files Text, XML Video, Audio, Documents Serialize and deserialize ActionScript objects Register to handle files based on file extension Support for Synchronous and Asynchronous operations
Local Database SQLite (http://www.sqlite.org) Supports ACID transactions Zero-configuration allowing for embedded solution SQL-92 Complete database is a single file on disk Supports terabyte-sized databases Adobe AIR provides both synchronous and asynchronous access options
Adobe AIR Desktop Integration Install and Uninstall Task Manager or Process List Application Shortcuts Drag and Drop Clipboard Cross Application communication Notifications
Background Applications and Notification Applications can run in background Applications can register to run at startup or user logon Applications can send user notifications using the system tray, docks, or new windows
Adobe Reader Integration Hi-fidelity document rendering Integrated presentation of documents Data Synchronization Uses the installed Adobe Reader 8.1+ to minimize runtime size
Enabling Secure Application Development Development: Separation of application and non-application content Enhanced HTML security model to limit injection Minimum-privilege and safe-by-default APIs to decrease developer risk Encrypted Local Storage to managing secrets like passwords or PINs http://download.macromedia.com/pub/labs/air/air_security.pdf http://download.macromedia.com/pub/labs/air/air_htmlsecurity.pdf
Adobe AIR 1.0 Limitations Limited hardware acceleration (full screen video only) No access to native libraries or executables No USB or serial port API Limited support for accessibility Limited printing support Limited localization in Adobe AIR 1.0 English only for 1.0 installers Japanese, German, French for 1.1
Tooling - Building AIR Applications Leverage existing tools for designers and developers Flex, Aptana, Dreamweaver, Flash, and more
Now building on Adobe AIR