你是否正在关注AIR或者正在进行AIR开发,但苦于没有一本书籍指点迷津?网上的资源分散且杂乱让你无所适从?那么这本《AIR完整入门与开发实录》将带你进入AIR的殿堂。

AIR 一方面提供与Flash等量齐观的API,一方面拥抱市场上大批的UI框架,如何将这二者合二为一将对开发者的参考价值很大。教学第一,该书不是API文 档乏味的复述,并有大量的例子与视频教学,学习AIR起来就可达到事半功倍的效果。实际上,AIR横跨Flex与Ajax的解决方案已为许多项目所青睐, 甚至一些项目就是这两种方案混搭而成的。如果你想打造全方位的AIR的应用程序,又想轻松地透过视频、例子的学习,该书是您的首选!
本书全面讲解Adobe AIR(Adobe Integrated Runtime)技术知识体系和开发实践。
在RIA开发领域,AIR无疑是一个独特的、弥补Web和桌面鸿沟的一项新技术,如何将这项技术详尽地介绍给国内的开发者呢?这是让作者和编者都感 到身负重大责任的事情。所以我们推出这本“实例+讲解”的特色图书,希望更容易被读者接受。事实证明,在枯燥的学习过程中,只有精彩实例可以让读者更快地 学习,更有效率地进步。
本书主要通过详细的实例讲解,向读者介绍AIR的特性和开发技巧。通过阅读本书,读者会了解到AIR的优势,以及如何快速有效地开发AIR应用。
基于AIR不同的开发模式,本书可分为两部分。传统的HTML+Ajax开发人员可以重点阅读Ajax部分;Flash/Flex开发人员可以重点 阅读 Flash/Flex部分。本书将以这两种开发模式为主线,将读者引入AIR的开发殿堂。其中的Ajax部分重点介绍AIR开发与现有Ajax框架的无缝 整合;而Flash/Flex细分为Flash和Flex两个部分,讲解应用不同的开发环境开发AIR应用的技巧。
购书地址:
http://www.china-pub.com/196053
本书书友会地址:
http://www.riameeting.com/community/forumdisplay.php?fid=24&page=1
Tags: AIR
在这篇文章中,我讲过如何使用”曲线救国“的方式捆绑AIR运行时的安装包,确保用户在没有安装AIR运行时的情况下也可以安装你的AIR应用:
http://www.riameeting.com/node/141
实际上Adobe已经准备好了解决方案,步骤如下:
- 到Adobe AIR的下载页面,有个“分发…“的链接,点过去,出现分发的用户协议
- 签署协议,提交分发AIR运行时的申请,Adobe会在3个工作日之内回复
- 申请通过,Adobe会发送给你集成AIR安装文件的下载链接
- 按照说明,将你的应用和AIR安装包绑定在一起,即可实现硬盘上的无缝安装
Tags: AIR
AIR中专门提供了一个存储区域用于存储加密的数据,类似于LocalSharedObject,但是是以加密形式存储的,这种数据的读取都封装在EncryptedLocalStore类中。主要使用下面两个方法:
- EncryptedLocalStore.setItem()
- EncryptedLocalStore.getItem()
这样,我们就可以将需要加密的数据保存到这个区域,需要的时候就到这里获取,示例代码:
[code]
if(EncryptedLocalStore.getItem("UserName")!=null) {
modelLocator.currentUser.name = String(EncryptedLocalStore.getItem("UserName"));
modelLocator.currentUser.pass = String(EncryptedLocalStore.getItem("UserPass"));
modelLocator.isRemember = true;
}
[/code]
存储加密数据的示例代码:
[code]
//如果用户选择记录密码,则将邮箱和密码保存到加密区域
if(loginEvent.isRemember) {
if(EncryptedLocalStore.getItem("UserName")==null) {
var nameByte:ByteArray = new ByteArray;
nameByte.writeUTFBytes(loginEvent.userName);
EncryptedLocalStore.setItem("UserName", nameByte);
var passByte:ByteArray = new ByteArray;
passByte.writeUTFBytes(loginEvent.passWord);
EncryptedLocalStore.setItem("UserPass", passByte);
}
} else {
EncryptedLocalStore.removeItem("UserName");
EncryptedLocalStore.removeItem("UserPass");
}
[/code]
Tags: AIR
来自7yue的报道:
http://www.7yue.com/post/248.html
Adobe官方网站对AIR Marketplace进行了改版,整个web页面的风格更加简洁,模板风格也与CS4中应用程序面板风格一致。浏览者可以更加容易的搜索和下载AIR应 用。而每一个AIR应用都用全新的Badge方式提供无缝安装与下载。浏览者同样可以对应用进行评论,评分,乃至上传自己的AIR应用。
每一个注册的用户都可以上传自己的AIR应用,Marketplace在你上传应用之后提供一个服务管理页面供你管理和维护你的应用信息,同时可以查看应用的各种统计数据,比如分数,评论,下载次数和时间分布。
如果开发人员提供AIR商业收费应用,同样Marketplace将免费帮助开发人员提供链接到收费程序网页的方式,目前,Marketplace暂不提供独立的交易平台。
http://airmarketplace.adobe.com
Tags: AIR
2009新一篇,给大家推荐一个AIR描述文件的可视化编辑工具,开发AIR应用的都知道,AIR应用有一个描述自身的XML文档,在Flash CS4中,是可以可视化的编辑这个XML的,但Flex Builder中就没有提供这样的功能,难道说开发者就只能用文本编辑的方式修改这个XML了吗?效率很低而且容易出错。
使用下面这个工具,问题就迎刃而解了,它提供了一个可视化的GUI界面来供你使用。
忘了告诉你,这个工具叫ADM。下载地址:
http://www.dehats.com/drupal/?q=node/55
Tags: AIR
Hi guys,
The Adobe AIR Help Resource Center and the doc contents for Simplified Chinese are now live here:
http://www.adobe.com/support/
文档中心的资料相当全面而完整,中国的AIR开发者有福了。
Tags: AIR
Adobe AIR在过去的数月间已经越来越被大家认可了,正是由于它应用的越来越广泛,许多新的基于AIR的应用不断出现。在这段时间里,我发现了以下的10个问题,很多开发人员在开发AIR的过程中都出现了这些问题。非常希望这个列表能帮助你在开发AIR应用的时候避免出现这些问题。
1.没有考虑平台的差异性
很多开发者工作在特定的平台下,比如Windows,他们想当然的开发只支持Windows的应用特性,而没有考虑到在Mac平台下用户怎么样去完成交互;同样Mac平台下的开发者也存在同样的问题。不理解这些概念,可导致应用程序给予用户极其糟糕的用户体验。
2.没有嵌入更新机制
在WEB移植到桌面的过程中一个很重要的改变就是更新的方式。不再是是否使用者“到你们这里来”获取您的应用程序,而是你应该传送你的应用给用户。事实上使用Adobe AIR Update Framework很容易做到这一点,但你如果没有考虑到这个机制,你的用户或许永远无法得到你的更新。
3.在应用发布后改变应用的ID
AIR应用通过如下的两个元素来确认一个应用:应用ID和发布者ID。这些元素是非常重要的,当你发布你的应用时。如果你改变了它们中的一个,那么用户可能无法更新他们的应用到最新版。甚至有可能让用户同时安装了旧版和新版。
4.没有支持离线方式
AIR是支持离线方式的,而如果你的应用没有考虑到这一点,那么你的用户在离线方式下的工作可能会很糟糕。
5.没有按照AIR的特性来思考
AIR API是非常强大的,但很多开发者还对这些不太了解,没有应用这些特性。比如,我听说有的开发者试图用文本文件加密数据而不是用EncryptedLocalStore功能,或者用文本存储数据而不是用SQLite数据库,尽管后者能提供更强大的功能和更好的支持。
6.使用自定义功能制作一个难用的界面
自定义界面(菜单栏,交互方式)可以改善用户的交互,但如果使用不当,或者有悖于标准的操作流程,用户将会感觉难以使用,如果用户不能轻易最大化,最小化,或打开一个应用程序窗口,那么他们使用你的应用的几率就非常小了。
7.没有使用install badge来部署你的应用
AIR Install Badge提供了无缝的方式来部署你的AIR应用,你还不知道它吗?那就太遗憾了。你可以在Adobe Labs找到它。
8.没有加密重要数据
在你通过互联网传输敏感数据的时候,是否将它加密了?记住互联网是不安全的,请慎重处理数据的传输。
9.没有保留本地系统的交互方式
在一个整体系统中,交互方式应该是统一的。比如在Windows下,Ctrl+C就是复制,而在Mac下面是Command+C。这些都是固有类型的行动,需要予以保留,使用户可以有一个惯性的经验在里面。否则只会造成混乱和下降的可用性。
10.没有考虑性能问题
开发桌面应用应该是非常好的体验。它打破了浏览器中许多制约你的因素。然而,你还是要考虑一些问题,例如内存和处理器利用率。这些问题变得更加复杂,当你开发了资源密集型的应用,如自定义导航和自定义窗口透明度。正如一个Web应用程序,每一个AIR应用,应测试系统异常以及系统资源的利用率。如果你正在使用Flex创造一个AIR应用,你可以使用Profiler来检视你的应用程序的资源利用情况。
原文地址:
http://www.adobe.com/devnet/air/articles/10_common_mistakes_air.html
Tags: AIR
AIR支持本地化了。
具体信息参见7yue的这篇文章
http://www.7yue.com/post/144.html
Developing Flex applications for AIR 1.1
Tags: AIR