序 1
前言 3
第1章 AIR初探 9
安装Adobe开发工具 10
Flash Professional CS 5.5 10
Flash Builder 4.5 10
在Android设备上安装AIR“运行时” 10
AIR SDK简介 11
新的ActionScript库 12
尚不支持的功能 13
桌面上的AIR与Android上的AIR的对比 13
Android上的Mobile Flash Player 10.1与AIR 2.6的对比 14
第2章 打电话和发短信 15
设置设备 15
创建项目 16
使用Flash Professional 16
使用Flash Builder 16
创建应用程序描述 17
使用Flash Professional 17
使用Flash Builder 17
写代码 17
使用Flash Professional 18
使用Flash Builder 19
将应用程序打包成APK文件并安装到设备 20
使用Flash Professional 20
使用Flash Builder 20
测试和调试 21
使用Flash Professional 21
使用Flash Builder 22
移动工具应用程序 22
Launchpad 22
Device Central CS5 23
Package Assistant Pro 23
De MonsterDebugger 23
通过服务器将AIR安装到Android设备上 23
其他工具 24
小结 25
第3章 Android初探 26
Android SDK 27
安装Android SDK 27
安装Android Debug Bridge 28
检测设备 29
使用Dalvik Debug Monitor 29
使用logcat命令 30
使用Virtual Device Manager和Emulator 31
AIR如何在Android上运行 32
使用intent启动AIR 33
AIR对Android API的访问 33
使用命令行工具 34
概述 34
小结 36
第4章 权限、证书和安装 37
为什么要针对移动市场 37
APK文件 37
创建应用程序图标 38
选择应用程序设置 39
设置权限 41
打包外部资源 44
用证书签署应用程序 45
版本控制 45
注册成为Android开发人员 46
在Android Market发布应用程序 46
上传资源 46
陈列细节 47
发布选项 47
通过Adobe InMarket发布应用程序 47
为Amazon Appstore发布 48
使用MAC地址控制发布 48
启动AIR应用程序 49
开发应用来挣钱 49
收费应用 49
移动广告 50
报告 50
小结 51
第5章 评估设备能力并应对多种设备 52
硬件 52
处理器 53
内存和存储 53
摄像机 53
传感器 53
电池 53
显示屏 53
软件 54
性能 54
功能 55
方向 56
创建多屏内容 57
资源缩放和定位 58
矢量图形与位图的选择 60
网络连接 61
小结 62
第6章 打开/关闭应用程序和保存数据 63
AIR应用程序 64
打开应用程序 64
关闭应用程序 64
在后台和前台之间切换 65
设置Back,Menu和Search按钮 66
重写暗屏行为 67
为什么和怎样保存数据 68
内部还是外部存储 68
本地共享对象 70
文件系统 72
使用SQLite数据库 75
创建数据库文件 76
嵌入数据库 81
使用加密本地存储 82
小结 83
第7章 多点触摸技术 84
简单的历史性回顾 84
多点触摸和手势 85
工作原理 85
Multitouch类 85
GestureEvent类 86
缩放(Zoom)手势 87
旋转(Rotate)手势 88
Pan手势 89
Swipe手势 90
Press and Tap手势 91
Two-Finger Tap手势 92
TouchEvent类 93
GestureWorks库 95
触摸设计 96
小结 96
第8章 加速计 98
什么是运动传感器 98
Accelerometer类 98
直观地认识值 100
简单动画 100
更新和屏幕渲染 101
设置边界 102
向中心旋转 102
摇一摇 103
获得平滑的值 104
小结 106
第9章 摄像机 107
Gallery应用程序和CameraRoll类 107
选择图片 108
添加图片 113
摄像应用程序和CameraUI类 113
上传到远程服务器 115
EXIF数据 115
小结 118
第10章 地理位置 119
Geolocation类 119
GeolocationEvent类 121
使用GPS和网络/Wi-Fi技术定位设备 122
使用GPS 122
使用蜂窝网络和WiFi 123
如何辨别正在使用GPS还是WiFi 123
AIR和Android 125
逆向地理编码 126
地图 128
启动Google Maps 128
静态地图 129
动态地图 132
EXIF数据和Map对象 136
speed属性 138
小结 138
第11章 麦克风和音频 140
麦克风 140
录音 141
播放音频 142
保存录音 143
音频资源 147
嵌入文件 147
使用外部文件 147
设置和音频编码/解码器 148
处理声音 150
加载声音 150
播放声音 152
显示进度 152
停止声音 153
恢复声音 153
访问元数据 154
使用多点触摸的音频示例 154
ID3标签 154
修改声音 155
控制音量 155
平移 156
原始数据和声音频谱 157
音频和应用程序活动 160
小结 161
第12章 视频 162
准备视频 162
编码/解码器 162
码率 163
帧频 164
分辨率 164
性能 165
播放视频 165
嵌入视频 165
外部视频 166
边播放边放的视频 166
RTMP流 170
HTTP动态流 171
P2P通信 171
控制 172
YouTube 172
捕获视频 173
视频和CameraUI类 173
Camera类 175
文档和教程 176
小结 176
第13章 StageWebView类 177
原生浏览器 177
StageWebView类 178
设计时的注意事项 180
本地使用 181
移动广告 182
服务和身份验证 184
不足 185
小结 186
第14章 硬件加速 187
一些定义 187
渲染和屏幕显示 188
计算 189
边线和颜色创建 189
光栅化 189
表示 189
Android上的GPU渲染 190
cacheAsBitmap属性 190
cacheAsBitmapMatrix属性 193
显示列表 195
内存消耗 195
树结构 196
节点关系 196
多帧MovieClip 198
交互性 198
多种渲染技术 198
最大纹理内存和纹理大小 199
2.5D对象 199
如何测试GPU渲染效率 199
矩阵 199
单位矩阵 200
变换矩阵 200
为多屏幕部署定义矩阵 202
GPU模式中不要使用的矩阵 202
硬件加速音频和视频 203
小结 203
第15章 设备和其他问题 204
RTMFP UDP 204
局域网的P2P 205
颜色交换 208
对比AIR应用程序 209
远程网络的P2P 209
简单文字聊天 211
多播流 212
端到端流 214
定向路由 216
中继 217
寻宝游戏 218
其他多用户服务 218
Arduino和物理计算 219
小结 219
第16章 ViewManager类 220
导航 220
ViewManager类 220
独立视图 224
面包屑导航 231
Flash Builder的ViewNavigator 233
小结 236
第17章 案例学习 237
Album应用程序 237
设计 238
构架 238
流程 239
权限 241
导航 241
图片 241
音频 242
逆向地理位置 242
SQLite 242
P2P连接 242
滚动导航 243
桌面功能 246
小结 246
第18章 资源管理 247
文本 247
虚拟键盘 247
字体 248
Flash文本引擎 248
优化图形 250
降尺度和mipmap 250
运行时的矢量图形 251
缩放 251
cacheAsBitmap 251
cacheAsBitmapMatrix 251
矢量到位图 252
合成矢量图形 252
多帧MovieClip 253
精灵表和Blitting 255
Blitting 255
定制光标 257
异步位图解码 257
缓存资源 257
组件 258
小结 259
第19章 最佳开发实践 261
关于优化的资源 261
寻求帮助 262
文档 262
Internet 262
社区 262
运行机制 263
帧的概念 263
内存 265
创建对象 265
删除对象 266
垃圾回收 268
事件 269
事件传播 270
多个子一个侦听器 270
泛型和自定义事件 271
诊断工具 272
Hi-Res-Stats 272
Flash Builder Profiler 273
Flash Preload Profiler 274
Grant Skinner的PerformanceTest类 274
本地工具 275
小结 275