Presentation is loading. Please wait.

Presentation is loading. Please wait.

Presented by Denard - March 2013.

Similar presentations


Presentation on theme: "Presented by Denard - March 2013."— Presentation transcript:

1 Presented by Denard Springle @NVCFUG - March 2013

2  Adobe AIR  HTML5  CSS3  Javascript/jQuery  Your favorite back-end technology (CF, right?!)

3  Converts Flash/Flex/AS3 or HTML/JS to Desktop Applications  Webkit browser based for HTML/JS apps  Supports HTML5, CSS3 and jQuery*  Windows, OS X, Linux  SDK and compiler (Currently v1.6.x)

4  Security Sandboxes  SQLite embedded database  Local storage (encrypted)  AS/JS proxies (AIRAliases.js)  PDF, clipboard, drag & drop, file system integration  Native menu’s and taskbars/docks  Service monitoring (check service availability)  Application updater (update from within)  Browser distribution (distribute AIR and app)

5  Security Sandboxes  More difficult to debug (Introspection)  Requires clients to DL and install Adobe AIR runtime  Applications must be digitally signed to be installed  ‘Odd’ issues – colors, script behavior, etc.

6  Same code base can be used across multiple platforms and devices  Web Exceptions: SQLite, Local Storage, File System, PhoneGap  Some exceptions can be handled in AS/JS  Some exceptions require code branching*

7  Application Sandboxed  Uses AJAX to communicate with server(s)  AIRAliases.js (Javascript aliases to AS3 calls) (air. not window.runtime.flash. )  Single page (v1.0+) or multi-page capable (v1.5+) HTML applications

8  EncryptedLocalStore.setItem(key, )  Value = EncryptedLocalStore.getItem(key)  jStorage is a cross-browser local storage system  $.jStorage.set(key,value)  Value = $.jStorage.get(key)  Use if/else with feature discovery to determine if running in AIR or in the browser

9  E-Commerce Apps are POS systems  Best Practice = use local db and app server, app server  central server (e.g. web site)  Return as little data as required, or as possible (e.g. pagination)  Not all POS printers are created equal (OPOS, JavaPOS, OS drivers)

10  Gather credit card data and split into card number, expiration, card holder  XX1234123412341234^CARD HOLDER^1604(^)  ccNum = Right(ListGetAt(,1,'^'),Len(ListGetAt(,1,'^'))-2) cardHolder = ListGetAt(,2,'^') expDate = Mid(ListGetAt(,3,'^'),3,2) & Left(ListGetAt(,3,'^'),2)

11  Screen resolution is usually limited (for POS systems – typical is 1024 x 768)  Inputs, buttons, selects, and even text have to be much larger than a web application  On-Screen keyboard will be required for textual input (OS or javascript, typically)

12  MissionTix Event Kiosk  MissionTix Conference Kiosk

13  http://get.adobe.com/air/ (AIR Distributable) http://get.adobe.com/air/  http://www.adobe.com/devnet/air/air-sdk- download.html (AIR SDK) http://www.adobe.com/devnet/air/air-sdk- download.html  http://www.sqlite.org/ (SQLite) http://www.sqlite.org/  https://github.com/andris9/jStorage (jStorage) https://github.com/andris9/jStorage  O’Reilly Adobe AIR 1.5 Cookbook (Flex and HTML)


Download ppt "Presented by Denard - March 2013."

Similar presentations


Ads by Google