描述
开 本: 16开纸 张: 胶版纸包 装: 平装是否套装: 否国际标准书号ISBN: 9787111391777
资深Adobe技术专家兼资深Android应用开发工程师亲自执笔,专业社区联袂推荐
系统讲解利用AIR技术开发Android应用的方法和流程,以及AIR应用在PC、Android设备和其他移动设备间的移植,包含大量案例、技巧和**实践
本书由资深Adobe技术专家兼资深Android应用开发工程师亲自执笔,既系统全面地讲解了如何利用AdobeAIR技术开发Android应用,又细致深入地讲解了如何将已有的基于PC的AIR应用移植到Android设备上。不仅包含大量实践指导意义极强的实战案例,而且还包括大量建议和*实践,是系统学习AIRAndroid应用开发不可多得的参考书。
全书共16章,分为五个部分:准备篇(1~2章)主要介绍了利用AIR开发Android应用之前需要了解的基本信息、开发环境的搭建,以及一个简单的AIRAndroid应用开发的全过程,旨在让读者对AIRAndroid应用开发有一个全面清晰的认识;基础篇(3~10章)对AIR移动开发技术进行了系统而全面地讲解,包括移动设备上的用户交互方式、加速计的使用、地理定位功能、整合系统程序、访问设备资源、网络通信、多媒体、文件和数据库等,以及程序的调试和发布;进阶篇(11~13章)以AIR桌面应用开发为参照对象,讲解了AIR移动开发的重点和难点,如何针对移动设备进行界面设计,如何提高用户体验,以及如何提升程序的性能等,作者分享了大量具有实际意义的技巧和*实践;实战篇(14~15章)详细讲解了一款游戏的开发过程,将AIR移动技术和FlashWeb技术灵活地结合了起来,展现了Flash技术在移动平台上的巨大潜力;高级篇(第16章)讲解了AIR3.0的新特色——本地扩展,本地扩展为AIR技术提供了超强的扩展能力,使得开发者可以摆脱AIR的技术局限性。
前言
第一篇 准备篇
第1章 AIR Android开发简介
1.1 开发之前需要了解的信息
1.1.1 AIR Android开发的可行性
1.1.2 开发过程中常见的问题
1.1.3 优势和局限性
1.2 搭建开发环境
1.2.1 安装Android SDK
1.2.2 使用Flash Professional CS5
1.2.3 使用Flash Builder 4.5
1.2.4 构建开源的开发环境
1.3 实战:一个简单的AIR项目
1.4 本章小结
第2章 第一个AIR Android程序:翻转黑白棋
2.1 游戏的设计思路
2.2 像往常一样编写ActionScript代码
2.2.1 创建棋子类Grid
2.2.2 编写主类Main
2.3 设置程序属性
2.3.1 了解应用程序描述文件
2.3.3 设置访问权限
2.4 打包APK文件
2.5 安装和运行程序
2.5.1 使用模拟器运行程序
2.5.2 在真机上运行程序
2.6 本章小结
第二篇 基础篇
第3章 处理用户交互
3.1 关于多点触摸
3.2 处理触摸事件
3.2.1 使用TouchEvent类
3.2.2 触摸事件与鼠标事件的区别
3.3 处理手势动作
3.3.1 放大与缩小手势
3.3.2 旋转手势
3.3.3 Swipe手势
3.4 本章小结
第4章 加速计
4.1 Accelerometer API用法
4.2 重力小球实例
4.2.1 如何模拟重力场
4.2.2 绘制小球
4.2.3 让小球总是掉到屏幕下方
4.2.4 为小球设置围墙
4.2.5 优化代码后运行程序
4.2.6 管理程序的状态
4.3 加速计实战:检测手机晃动
4.4 本章小结
第5章 地理定位
5.1 开启手机的地理定位功能
5.2 Geolocation API用法
5.3 地理定位实战:自动查询地址和天气
5.3.1 查询地址Geocoding
5.3.2 查询本地天气Weather
5.3.3 代码解析
5.3.4 测试运行
5.4 本章小结
第6章 整合系统程序
6.1 使用自定义URI调用系统程序
6.1.1 电话拨号tel
6.1.2 发送短信sms
6.1.3 发送邮件mailto
6.2 使用Android系统自带的地图服务
6.3 使用StageWebView加载网页
6.4 本章小结
第7章 多媒体
7.1 使用摄像头
7.1.1 摄像头的传统用法
7.1.2 使用CameraUI类调用摄像程序
7.2 使用设备上的多媒体资源
7.2.1 使用CameraRoll类向系统相册添加照片
7.2.2 使用CameraRoll类选取照片
7.3 使用麦克风录音
7.4 播放视频
7.4.1 AIR支持的视频格式
7.4.2 播放视频实战:VideoPlayer
7.5 本章小结
第8章 文件和数据库
8.1 文件系统API
8.1.1 Android文件系统和程序目录结构
8.1.2 常用的文件操作
8.1.3 用异步方式操作文件
8.2 SQL数据库
8.2.1 SQLite简介
8.2.2 连接数据库
8.2.3 创建表
8.2.4 添加、查询、更新和删除
8.2.5 数据库实战:使用查询参数重用SQLStatement对象
8.3 本章小结
第9章 网络通信
9.1 网络通信知识简介
9.1.1 网络通信API
9.1.2 AIR的安全机制
9.2 检测网络状态
9.3 Socket实战:开发即时聊天工具
9.3.1 Socket通信流程
9.3.2 在桌面建立服务器
9.3.3 构建简单的聊天服务器
9.3.4 制作聊天客户端
9.4 强大的P2P功能
9.4.1 P2P通信模型
9.4.2 P2P开发实战:视频直播
9.5 本章小结
第10章 调试和发布
10.1 调试程序
10.1.1 使用ADL在桌面上调试程序
10.1.2 远程连接Flash调试器
10.1.3 使用Android SDK的DDMS工具
10.2 发布程序前的准备工作
10.2.1 设置程序的基本属性
10.2.2 管理程序的版本号
10.2.3 针对Android设备的设置
10.3 发布APK文件
10.4 将程序发布到应用商店
10.4.1 发布到Google Play商店
10.4.2 发布到安卓市场
10.5 本章小结
第三篇 进阶篇
第11章 针对移动设备的程序设计
11.1 设计界面
11.1.1 自动适应不同型号的屏幕
11.1.2 友好的用户交互
11.1.3 有效的界面布局
11.2 管理程序的状态
11.2.1 监测程序状态
11.2.2 实战:自动保存播放位置
11.3 跨平台开发
11.3.1 跨平台开发时的注意事项
11.3.2 技巧:使用编译参数兼容多平台
11.4 本章小结
第12章 键盘交互
12.1 Android设备上的键盘交互
12.1.1 Android设备上的实体按键
12.1.2 监听键盘事件
12.2 实战:使用Menu键模拟Android的菜单和行为
12.2.1 创建菜单对象
12.2.2 关联按键动作
12.3 Back键的用法
12.3.1 实战:使用Back键进行页面导航
12.3.2 通过Back键自动关闭程序
12.4 本章小结
第13章 性能优化
13.1 了解ActionScript 3.0的运行机制
13.1.1 ActionScript 3.0的特点
13.1.2 关于垃圾回收机制
13.2 从编程细节处看优化
13.2.1 使用最合适的数据类型和API
13.2.2 资源的回收和释放
13.2.3 实例:一段代码的优化历程
13.3 常用工具和代码库
13.3.1 使用FlexPMD优化代码
13.3.2 Flash Builder的性能调试工具Profiler
13.3.3 第三方调试工具Monster Debugger
13.4 优化技巧实战案例
13.4.1 运用render事件减少代码执行
13.4.2 构建对象池重用对象:动态小球实例
13.4.3 异步事件的使用:搜索SD卡
13.5 本章小结
第四篇 实战篇
第14章 迷宫游戏的准备阶段
14.1 需求分析
14.1.1 游戏规则
14.1.2 游戏功能的实现
14.2 技术要点分析
14.2.1 如何实现物理效果
14.2.2 如何生成地图
14.3 Box2D物理引擎
14.3.1 Box2D中的基本概念
14.3.2 示例程序HelloBox2D
14.3.3 实现碰撞效果
14.4 迷宫地图算法
14.4.1 问题分析
14.4.2 回溯法详解
14.4.3 代码实现
14.5 本章小结
第15章 迷宫游戏的实现
15.1 制作迷宫地图
15.1.1 绘制带有物理属性的地图
15.1.2 添加随机障碍物
15.2 加入可“行走”的角色
15.2.1 创建小球
15.2.2 使用加速计控制小球的移动
15.2.3 碰撞检测
15.3 游戏状态控制
15.3.1 自动暂停和恢复
15.3.2 关卡设置
15.4 游戏代码分析
15.4.1 程序中的类
15.4.2 主程序Game类详解
15.5 本章小结
第五篇 高级篇
第16章 AIR本地扩展
16.1 ANE的特点
16.2 一个简单的本地扩展
16.2.1 搭建开发环境
16.2.2 编写本地代码
16.2.3 编写ActionScript代码
16.2.4 打包和发布
16.2.5 在程序中使用本地扩展
16.3 ANE进阶实战技术
16.3.1 Intent机制:分享信息到社交网站
16.3.2 在顶部状态栏显示系统通知
16.4 本章小结
Adobe的AIR移动开发技术是未来移动开发跨平台技术的主流之一。十多年来Flash游戏与应用开发的成熟奠定了它的基础,而Flash通过AIR来开发移动端应用的便利性和实用性,已经受到了业界的青睐。本书的出版可谓是顺应时代的要求,总结了作者多年来在RIA应用开发领域的经验,希望广大Flash开发者能从中受益!
——天地会()全球*的RIA开发者社区/Adobe官方认证社区冠军
AIR移动开发技术在Adobe未来10年的发展战略中有非常重要的地位,关乎到Adobe在移动开发领域的地位和话语权,所以Adobe一直在大力投入。AIR移动开发技术是Flash开发者的福音,它不仅能让Flash开发者利用原有的知识迅速开发出基于各种移动平台的应用,而且还能将已经存在于PC桌面的AIR应用便利地移植到各种设备上。Android应用开发目前在移动开发领域炙手可热,本书专门讲解了如何开发利用AIR移动开发技术开发基于该平台的应用。全书内容非常全面,各种理论、开发方法和技巧均覆盖到了,适合系统学习;实战性非常突出,包含大量案例,可操作很强。此外,本书内容也不乏深度,对性能优化等高级内容也进行了探讨,而且还包括一些*实践。
——艾睿论坛() 专注Flex开发
本书算得上是AIR移动开发方面的优秀之作,全面而深入地讲解了如何使用AIR技术开发Android应用。特别令人印象深刻的是,这本书在多点触控与重力感应等移动开发的关键技术上有深入的探索,是不同水平层次的AIR移动开发者都值得阅读并研究的实战教材。
——Flash开发者大会
随着ANE、Alchemy的出现,Native的特性和运行性能都得到很大的提升。借助AIR跨平台和高效开发的优势,AIR已完全具备开发商业产品的能力。本书针对AIRfor Android开发,详细地介绍了手势、加速计、地理定位等移动特性开发细节,很适合AIR forAndroid初学者系统学习。在本书指导下,读者可以快速学习AIR forAndroid开发的核心知识,省去走弯路的时间。
——李佳宸 Adobe专家组成员、瑞研社区创始人、Flash开发者大会组织者、AIR移动研究小组()委员
2007年通过Flex与彦林相识,3年后,在Flash开发者大会上再次和他相遇,5年后的今天,彦林带给我惊喜,他将自己在AIR和Android应用开放方面的经验系统总结了出来并集结成书。迫不急待地看了样章,简明扼要是给我的第一印象。插图不多,但恰到好处。说到关键点时,给出了带有注释的示例代码,言简意骇,能让读者始终保持清晰的思路。对于想开发移动AIR的同学来说,是一本不错的学习教材。希望能借着此类书籍,让国内的移动AIR开发者队伍能更快地发展壮大,让Flash技术更快地渗透到移动互联网。
——Y.Boy 资深Flash技术专家(个人网站: riaoo.com) /就职于腾讯
第一篇
准备篇
第1章 AIR Android开发简介
第2章 第一个AIR Android程序:翻转黑白棋
第1章 AIR Android开发简介
2010年,Adobe公司成功地将AIR技术引入移动平台,从此,一举打开了通往移动领域的大门。而对于Flash开发者来说,该技术的出现为他们转向移动应用开发提供了便利的条件。
2010年年底,AIR已经实现了对Android、BlackBerry TabletOS和iOS三个移动操作系统的支持。从目前的状况看,AIR在Android平台上的表现最抢眼。一方面,AIR程序在Android设备(手机和平板电脑)上的运行性能得到了用户的肯定;另一方面,当前市面上绝大部分Android手机和平板电脑都支持AIR程序,而且电子市场上使用AIR开发的程序数量呈上升趋势。
因此,本书以Android平台为目标,介绍AIR Android开发的必备知识,以及AIRAndroid的新功能和新特性。移动应用开发与桌面应用开发和Web应用开发相比,有其自身的特点。本书还将针对开发中的常见问题、程序设计技巧以及开发者关心的程序性能优化等内容进行重点讲解。另外,由于AIR的跨平台特性,书中的很多内容同样适用于BlackBerryTablet OS和iOS平台。
1.1 开发之前需要了解的信息
在国内知名的Flash开发者论坛上,关于AIR Android,许多朋友都提到以下问题:
AIR程序在手机上的性能如何?
可以使用Flex框架吗?如何搭建开发环境?
如何发布APK文件?
必须使用Android的SDK吗?
一定要使用真机吗?
……
这一节,将针对这些问题给出答案。
1.1.1 AIR Android开发的可行性
可行性无疑是开发人员优先考虑的因素,如果开发的程序根本无法在设备上运行,或者用户体验很不友好,性能远远没有达到设定的目标,那么技术就失去了实际意义。
从市场的反馈来看,用户对AIR在Android上的性能表现相当满意。2010年10月,AIR正式登陆Google电子市场(2012年3月更名为GooglePlay商店),在短短两个月时间里,程序的累计下载量超过了25万次。截至本书出版前,AIR的最新版本为3.1,支持Android2.2及以上版本。
需要说明的是,并不是所有的Android设备都支持AIR。Adobe官方网站的信息显示,设备必须满足以下条件才能运行AIR:
Android 2.2或更高版本。
ARM v7-A或更高级的处理器。
支持OpenGL ES2.0。
支持H.264 & AAC H/W 解码。
至少有256 MB内存。
一般情况下,安装或升级到Android2.2的设备都可以运行AIR,而市面上的Android设备很多都已经安装或升级到2.2或以上版本了。在Android开发者站点上,会定期发布统计数据,让开发者了解当前Android不同版本的市场状况。图1-1所示为2011年10月20日至11月3日的统计数据。数据显示了在这两周的时间内访问Google电子市场的设备所对应的Android系统版本分布。
评论
还没有评论。