Developing Android Applications with Adobe AIR [128]
Android Software Development Kit
Installing the Android SDK
Installing the Android Debug Bridge
Detecting Your Device
Using the Dalvik Debug Monitor
Using the logcat Command
Accessing the device’s filesystem
Using the Virtual Device Manager and Emulator
How Does AIR Run on Android?
Starting AIR with intent
AIR Access to Android APIs
Using the Command-Line Tool
A Basic Review
The PATH environment variable
Conclusion
4. Permissions, Certificates, and Installation
Why Mobile?
The APK File
Creating the Application Icon
Choosing the Application Settings
Setting Permissions
Packaging External Resources
Signing Your Application with a Certificate
Versioning
Registering As an Android Developer
Publishing an Application on the Android Market
Uploading Assets
Listing Details
Publishing Options
Distributing Applications via Adobe InMarket
Publishing for the Amazon Market
Controlling Distribution by Using the MAC Address
Launching an AIR Application
Monetizing Your Application
Paid Applications
Mobile Ads
Reporting
Conclusion
5. Evaluating Device Capabilities and Handling Multiple Devices
Hardware
The Processor
Memory and Storage
The Camera
Sensors
The Battery
The Display
Software
Performance
Capabilities
Orientation
Creating Content for Multiple Screens
Asset Scaling and Positioning
Dynamic positioning
Vector Graphics or Bitmaps?
Using vector graphics
Using bitmaps
Developing a Deployment Strategy
Considering Connectivity
Conclusion
6. Opening and Closing an Application and Saving Data
The AIR Application
Opening the Application
Closing the Application
Moving Between the Background and Foreground
Setting Back, Menu, and Search Buttons
Overriding a Dimmed Screen
Why and How to Save Data
Internal or External Storage?
Local SharedObject
The Filesystem
Writing data to the file
Reading a file
Deleting a file
Choosing between synchronous and asynchronous mode
Writing data and saving it to temporary files
Using the SQLite Database
Creating the database file
Opening the database file
Creating the table
Adding data
Requesting data
Editing existing data
Embedding a Database
Using Encrypted Local Storage
Conclusion
7. Multitouch Technology
A Brief History
What Is Multitouch and Gesture?
How Does It Work?
The Multitouch Class
The GestureEvent Class
The Zoom Gesture
The Rotate Gesture
The Pan Gesture
The Swipe Gesture
The Press and Tap Gesture
The Two-Finger Tap Gesture
The TouchEvent Class
The GestureWorks Library
Designing for Touch
Conclusion
8. Accelerometer
What Is a Motion Sensor?
The Accelerometer Class
Visualizing the Values
A Simple Animation
Updates and Screen Rendering
Setting Boundaries
Rotating Toward the Center
Shake Me
Smoothing Out Values
Using a high-pass filter
Using a low-pass filter
Conclusion
9. Camera
The Gallery Application and the CameraRoll Class
Selecting an Image
Adding an Image
The Camera Application and the CameraUI Class
Uploading to a Remote Server
EXIF Data
Conclusion
10. Geolocation
Geolocation Classes
The GeolocationEvent Class
Locating a Device Using Global Positioning System and Network/WiFi Technology
Using GPS
Signal-to-noise ratio
Assisted GPS
Using the Cellular Network and WiFi
How to Know if GPS or WiFi Is Active
AIR and Android
Reverse Geocoding
Maps
Launching Google Maps
Static Maps
The Yahoo! Map Image API
The Google Static Maps API
Dynamic Maps
The Google Maps API for Flash
Styled Maps support
Google Maps 5
EXIF Data and the