ADOBE AIR. Working with Data in AIR. David Tucker



Similar documents
Accessing Data with ADOBE FLEX 4.6

Introducing Apache Pivot. Greg Brown, Todd Volkert 6/10/2010

bbc Overview Adobe Flash Media Rights Management Server September 2008 Version 1.5

BestSync Tutorial. Synchronize with a FTP Server. This tutorial demonstrates how to setup a task to synchronize with a folder in FTP server.

Administering Jive Mobile Apps

TIBCO Spotfire Metrics Modeler User s Guide. Software Release 6.0 November 2013

SQL Anywhere 12 New Features Summary

owncloud Architecture Overview

New Features for Sybase Mobile SDK and Runtime. Sybase Unwired Platform 2.1 ESD #2

Automated Process Center Installation and Configuration Guide for UNIX

Zed E-Commerce and WebCRM 7.5. Release Notes 11/29/2011

Gladinet Cloud Backup V3.0 User Guide

TestTrack. Installation Guide Version

Wiley Publishing, Inc.

GP REPORTS VIEWER USER GUIDE

SIP Protocol as a Communication Bus to Control Embedded Devices

Two-factor authentication Free portable encryption for USB drive Hardware disk encryption Face recognition logon

Deploying Microsoft Operations Manager with the BIG-IP system and icontrol

[PACKTl. Flash Development for Android Cookbook. Flash, Flex, and AIR. Joseph Labrecque. Over 90 recipes to build exciting Android applications with

Configuration Guide. Installation and. BlackBerry Enterprise Server for Microsoft Exchange. Version: 5.0 Service Pack: 4

To install Multifront you need to have familiarity with Internet Information Services (IIS), Microsoft.NET Framework and SQL Server 2008.

A programming model in Cloud: MapReduce

SCOPTEL WITH ACTIVE DIRECTORY USER DOCUMENTATION

IBM Tivoli Composite Application Manager for Microsoft Applications: Microsoft Internet Information Services Agent Version Fix Pack 2.

System Requirements - CommNet Server

Microsoft Dynamics NAV 2015 Hardware and Server Requirements. Microsoft Dynamics NAV Windows Client Requirements

AJAX Storage: A Look at Flash Cookies and Internet Explorer Persistence

RSA SecurID Software Token 1.3 for iphone and ipad Administrator s Guide

Polar Help Desk Installation Guide

Microsoft Corporation. Project Server 2010 Installation Guide

Online signature API. Terms used in this document. The API in brief. Version 0.20,

Websense Support Webinar: Questions and Answers

ICE Trade Vault. Public User & Technology Guide June 6, 2014

SharePoint 2010 Performance and Capacity Planning Best Practices

Table 1. Requirements for Domain Controller. You will need a Microsoft Active Directory domain. Microsoft SQL Server. SQL Server Reporting Services

VEEAM ONE 8 RELEASE NOTES

Pcounter. Category Characteristics. Unified print room management Print policies and rules Product-based job processing Print queue management

owncloud Architecture Overview

Admin Guide Product version: Product date: November, Technical Administration Guide. General

Introduction to HP ArcSight ESM Web Services APIs

Mercury Users Guide Version 1.3 February 14, 2006

Installation and Administration Guide

Inmagic Content Server Workgroup Configuration Technical Guidelines

for Networks Installation Guide for the application on the server July 2014 (GUIDE 2) Lucid Rapid Version 6.05-N and later

System Administration Training Guide. S100 Installation and Site Management

Interworks. Interworks Cloud Platform Installation Guide

AVG 8.5 Anti-Virus Network Edition

Kony Mobile Application Management (MAM)

GoAnywhere Director to GoAnywhere MFT Upgrade Guide. Version: Publication Date: 07/09/2015

Analyzing Network Servers. Disk Space Utilization Analysis. DiskBoss - Data Management Solution

4.1 Introduction 4.2 Explain the purpose of an operating system Describe characteristics of modern operating systems Control Hardware Access

Deepak Patil (Technical Director) iasys Technologies Pvt. Ltd.

Smartphone Enterprise Application Integration

Last Revised: 2/16/2010. Microsoft Office SharePoint 2007 User Guide

SysPatrol - Server Security Monitor

Architecting the Future of Big Data

MEGA Web Application Architecture Overview MEGA 2009 SP4

WatchGuard SSL v3.2 Update 1 Release Notes. Introduction. Windows 8 and 64-bit Internet Explorer Support. Supported Devices SSL 100 and 560

User Manual. Onsight Management Suite Version 5.1. Another Innovation by Librestream

GE Measurement & Control. Remote Comms System. Installation and User Reference Guide

Ocean Data Systems Ltd. The Art of Industrial Intelligence. Dream Report GETTING STARTED. User- Friendly Programming-Free Reporting for Automation

Networking Best Practices Guide. Version 6.5

System Requirements for Microsoft Dynamics NAV 2013 R2

Administration Guide. Wireless software upgrades

VMware vcenter Log Insight Getting Started Guide

Firebird. A really free database used in free and commercial projects

BlackBerry Enterprise Service 10. Secure Work Space for ios and Android Version: Security Note

FileMaker Server 12. Custom Web Publishing with PHP

Perceptive Intelligent Capture Solution Configration Manager

Configuration Guide. Installation and. BlackBerry Enterprise Server Resource Kit. Version: 5.0 Service Pack: 4

The SSL device also supports the 64-bit Internet Explorer with new ActiveX loaders for Assessment, Abolishment, and the Access Client.

Configuring Backup Settings. Copyright 2009, Oracle. All rights reserved.

SC-T35/SC-T45/SC-T46/SC-T47 ViewSonic Device Manager User Guide

BlackBerry Enterprise Server for Microsoft Exchange. Version: 5.0 Service Pack: 4. Upgrade Guide

McAfee Data Loss Prevention Endpoint 9.4.0

Cache Configuration Reference

Improve application performance and scalability with Adobe ColdFusion 9

Update: About Apple RAID Version 1.5 About this update

Boost SQL Server Performance Buffer Pool Extensions & Delayed Durability

Bubble Code Review for Magento

System Requirements for Microsoft Dynamics NAV 2016

Wimba Pronto. Version 3.1. Administrator Guide

Active Directory Management. Agent Deployment Guide

VMware Virtual Desktop Infrastructure (VDI) - The Best Strategy for Managing Desktop Environments Mike Coleman, VMware (mcoleman@vmware.

32-Bit Workload Automation 5 for Windows on 64-Bit Windows Systems

IceWarp Server Upgrade

Plug-In for Informatica Guide

Technical Specification Data 1

SharePoint Server 2010 Capacity Management: Software Boundaries and Limits

Chart of Accounts (COA) Validation Service. 6/11/2012 University at California, Berkeley IS&T, Application Services

This document is provided to you by ABC E BUSINESS, Microsoft Dynamics Preferred partner. System Requirements NAV 2016

Using Apache Derby in the real world

How to Scale out SharePoint Server 2007 from a single server farm to a 3 server farm with Microsoft Network Load Balancing on the Web servers.

Flash and Python. Dynamic Object oriented Rapid development. Flash and Python. Dave Thompson

Distributed File Systems

How To Install Powerpoint 6 On A Windows Server With A Powerpoint 2.5 (Powerpoint) And Powerpoint On A Microsoft Powerpoint 4.5 Powerpoint (Powerpoints) And A Powerpoints 2

cubesql ReadMe SQLabs, All rights reserved.

SECURELINK.COM REMOTE SUPPORT NETWORK

Asta Powerproject Enterprise

Transcription:

ADOBE AIR Working with Data in AIR David Tucker

Who am I Software Engineer II, Universal Mind Adobe Community Expert Lead Author, Adobe AIR 1.5 Cookbook Podcaster, Weekly RIA RoundUp at InsideRIA Author, AIR for Flash Developers at Lynda.com

How I Will Be Approaching Topics Explaining the background for a beginner Showing intermediate level examples Providing advanced tips for production applications

Agenda: AIR Data

Agenda: AIR Data Encrypted Local Store

Agenda: AIR Data Encrypted Local Store Local File System

Agenda: AIR Data Encrypted Local Store Local File System Embedded SQLite Database

Agenda: AIR Data Encrypted Local Store Local File System Embedded SQLite Database Online/Offline Sync with LCDS (time permitting)

Encrypted Local Store The encrypted local store provides secure storage for binary data which can be retrieved via a string key. It utilizes the native operating system encryption store (such as Keychain on the Mac or DPAPI on Windows) to secure data with 128-bit encryption. Data in the Encrypted Local Store is accessible only from your AIR application.

API Dictionary flash.data.encryptedlocalstore - The class that handles all interaction with the Encrypted Local Store has four static methods for working with its data getitem(name:string):bytearray removeitem(name:string):void reset():void setitem(name:string, data:bytearray, stronglybound:boolean = false):void

Code Sample: Encrypted Local Store

Store Retrieve

Encrypted Local Store Performance Analysis 100 KB 256 KB 512 KB 1 MB 10 MB 0 2 4 6 8 10 12 14 16 18 20 Store Retrieve

Encrypted Local Store Performance Analysis 100 KB 256 KB 512 KB 1 MB 10 MB 0 2 4 6 8 10 12 14 16 18 20 Store Retrieve

Encrypted Local Store Performance Analysis 100 KB 256 KB 512 KB 1 MB 10 MB 0 2 4 6 8 10 12 14 16 18 20 Store Retrieve

Encrypted Local Store Performance Analysis 100 KB 256 KB 512 KB 1 MB 10 MB 0 2 4 6 8 10 12 14 16 18 20 Store Retrieve

Encrypted Local Store Performance Analysis 100 KB 256 KB 512 KB 1 MB 10 MB 0 2 4 6 8 10 12 14 16 18 20 Store Retrieve

Encrypted Local Store Performance Analysis 100 KB 256 KB 512 KB 1 MB 10 MB 0 2 4 6 8 10 12 14 16 18 20 Store Retrieve

Encrypted Local Store Performance Analysis 100 KB 256 KB 512 KB 1 MB 10 MB 0 2 4 6 8 10 12 14 16 18 20 Store Retrieve

Encrypted Local Store Performance Analysis 100 KB 256 KB 512 KB 1 MB 10 MB 0 2 4 6 8 10 12 14 16 18 20 Store Retrieve

Encrypted Local Store Performance Analysis 100 KB 256 KB 512 KB 1 MB 10 MB 0 2 4 6 8 10 12 14 16 18 20 Store Retrieve

Encrypted Local Store Performance Analysis 100 KB 256 KB 512 KB 1 MB 10 MB 0 2 4 6 8 10 12 14 16 18 20 Store Retrieve

Encrypted Local Store Performance Analysis 100 KB 256 KB 512 KB 1 MB 10 MB 0 2 4 6 8 10 12 14 16 18 20 Store Retrieve

Asynchronous vs. Synchronous AIR API's AIR does allow you to work with multiple threads using the Asynchronous API's for certain pieces of functionality: Encrypted Local Store - No Async API SQLite Database - Sync and Async API Local File System - Sync and Async API You cannot utilize multiple threads outside of these Asynchronous API's.

Local File System

API Dictionary: File System flash.filesystem.file - The class that contains a reference to a file system object (either file or directory). flash.filesystem.filestream - This class can read binary data into and out of a file on the filesystem. flash.filesystem.filemode - A class of constants that defines the mode in which a file is opened.

Two Ways to Open a File open( file:file, filemode:string ):void openasync( file:file, filemode:string ):void

Code Example: Image Cache

Serialization and IExternalizable With the local file system, you are not limited to just storing binary data from files, you can also store complex object graphs by having your model implement IExternalizable. Serializing Objects - DavidTucker.net

Local File System Tips Vista will not allow you to copy, update, or delete any files that exist in the application directory. Because of this, always utilize the application storage directory for storing application data. Utilize the constants defined in flash.filesystem.file to help preserve crossplatform compatibility. Utilize the url property when possible.

Embedded SQLite Database

SQLite Tools It can be very helpful to have an SQLite administration tool: SQLite Admin AIR Application SQLite Database Browser SQLite Manager Firefox Extension

API Dictionary: SQLite flash.data.sqlconnection - The actual connection to a database stored either as a file or in memory flash.data.sqlstatement - The class that contains an SQL statement that will be executed on the database flash.data.sqlresult - The class that holds the result set for a given query.

Code Sample: SQLite Database

Encrypted Databases AIR 1.5 added support for encrypted databases Database must be encrypted when created The encryption key can be changed using the reencrypt method

Generating Encryption Keys You will need to use a library that will allow you to generate the required binary key for the encrypted database. Two common options are as3corelib and as3crypto. as3corelib as3crypto

Code Sample: Encrypted Database

Advanced Database Tips Each statement is in a transaction by default, so batch commands should be wrapped in a transaction for performance. When multiple SELECT queries need to be run simultaneously, utilize connection pooling.

ORM Solutions There are two promising solutions for simplifying interaction with the SQLite database in AIR. Flex ORM - Provides a metadata-based framework for defining the database model from the application model. DAO-Ext - Automates the implementation of the DAO pattern in your application.

AIR Sync with LCDS LiveCycle Data Services provides an enterprise solution for synchronizing data between the server and an occasionally connected AIR application. Data Synchronization in AIR with LCDS - John C. Bland II at InsideRIA

Questions?

Keep Up with RIA s The Weekly RIA RoundUp Podcast at InsideRIA covers both Flex and AIR news as well as the rest of the RIA landscape.