air apps-and-smart-cards

15
AIR Apps & Smart Cards Zaid Al-Dabbagh & Jean- Baptiste Pin Flash Platform Camp Wellington 2010

Upload: zaid-al-dabbagh

Post on 11-May-2015

1.060 views

Category:

Technology


0 download

DESCRIPTION

Jean-Baptise Pin and Zaid Al-Dabbagh - Snapper's Rich-Internet-Application Developers - show off some of the latest Flash apps including the popular MySnapper, in addition to other apps that talk to smartcards. 2010 Flash Platform Code Camp is a community event for Developers and Designers, taking place in Wellington. It is a great place to meet and greet, share cool stuff, try out new technologies and code together with other like-minded people.

TRANSCRIPT

Page 1: Air apps-and-smart-cards

AIR Apps & Smart CardsZaid Al-Dabbagh & Jean-Baptiste

Pin

Flash Platform Camp Wellington 2010

Page 2: Air apps-and-smart-cards

Agenda• Who we are 5mins

– Zaid Al-Dabbagh (aka Zaid!)– Jean-Baptiste Pin (aka JB)

• Apps 10mins– MySnapper (Zaid)– SnapperRefunder (Zaid)– Snapper SAM Label Printer (JB)

• Technical Possibilities 5mins• Quick Overview of Architecture 10mins• Live Demos 15mins

Page 3: Air apps-and-smart-cards

Zaid Al-Dabbagh

• Past: Web Developer (CMS)• Present: RIA Developer• Likes: Web / Flash / Design / CMS’s• Contact:– Email: [email protected]– Twitter: www.twitter.com/zaidaldabbagh– Skype: zaid.aldabbagh

Page 4: Air apps-and-smart-cards

Jean-Baptiste PIN

• Master IT in France (Supinfo)• 2 years @ Monaco – RIA and C# - Content

delivery platform• 6 Month in Paris – Functional Consultant SOA –

Enterprise Architecture (BAM & BSM)• 6 Month in Sophia Antipolis – Architect J2ee• Contact:

– Email : [email protected]– Blog: http://jbpin.wordpress.com– Github: http://www.github.com/jbpin

Page 5: Air apps-and-smart-cards

MySnapper

Page 6: Air apps-and-smart-cards

Pre-MySnapper

• ActiveX controller• Limitations:– Browser Support (IE only)– Non-cross-platform support (Windows only, no

support for 64 bit, Visa or 7)– Controller is maintained off shore by 3rd party– Slow and clunky– Architecture (Webpage trying to talk to low

level device)

Page 7: Air apps-and-smart-cards

MySnapper … The answer• Adobe AIR Desktop Application• Adobe Flex Builder 3 (Flex 3.5)• Functionality:

– Get Snapper card balance– Top up Snapper card balance (Using a Credit Card)

• MySnapper is a separate component to the website that embeds certain parts of the website (Promotions template)

• A cross-platform solution– Supports Windows/Mac/Linux

• Runs on Adobe AIR 1.0 • user-friendly interface• Fast and slick!

Page 8: Air apps-and-smart-cards

Obstacles to MySnapper

• AIR 1.0 didn’t support native API calls• No support for native code integration

(Sandboxed)• No way to talk to Feeder drivers

Page 9: Air apps-and-smart-cards

Highs and Lows of MySnapper

• Merapi bridge vs HTTP Server• Shu Installer• HTTP vs XML (MySnapper to card)• HTTPs (MySnapper to SYRAH)• Code Signing• SYRAH Migration from PHP to .Net• Heartbeat• Washing Machine• Window Frames

Page 10: Air apps-and-smart-cards

Download MySnapper

• Download from www.snapper.co.nz

Page 11: Air apps-and-smart-cards

Architectural Overview

Page 12: Air apps-and-smart-cards

Quick Architecture Overview 1/2• Flex 3.5 & AIR 2.0• MVCS – Model View Controller Service• Robotlegs Micro Architecture

http://www.robotlegs.org/

• AS3-Signal instead of Eventhttp://github.com/robertpenner/as3-signals

– Prevent event listener memory leaks– Faster than events– Object based (Signal can be integrated into

interfaces)

Page 13: Air apps-and-smart-cards

Quick Architecture Overview 2/2• Presenter pattern instead of Mediator

pattern– Application behaviours and logic are clearly not

dependant of the view– Using BindingUtils and Signal for

communication between them

• Command Processhttp://github.com/jbpin/CommandProcess-AS3

– Using NativeProcess API like a service

Page 14: Air apps-and-smart-cards

Live Demo

Page 15: Air apps-and-smart-cards

Thanks to our sponsors