翻译:Adobe AIR 2.6的新特性

分享到:

本文由RIAMeeting翻译,您可以自由转载,但请注明原文和译文地址,谢谢

原文地址:
http://blogs.adobe.com/cantrell/archives/2011/03/everything-new-in-adobe-air-2-6.html

Adobe AIR 2.6 现在已经上线了 (运行时 和 SDK). 当前2.6的工作重点是均衡Android和iOS的功能实现(译者注:之前由于某些原因,AIR2.5的功能特性主要是针对Android平台开发的), 当然我们也悄悄的针对SDK,Android,桌面性能等方面提供了一些好的特性。

下面是AIR 2.6所提供的新特性的列表.

  • 异步位图解码. 这个特性将允许我们在主线程之外,另起一个线程完成对位图的解码。设置 LoaderContext的imageDecodingPolicy 属性的值为ImageDecodingPolicy.ON_LOAD,来启用异步位图解码,这样可以让您的应用更加灵活,动画更流畅。
  • 专属窗口(Owned Windows). 专属窗口适用于像调色板工具这样的情况。专属窗口特性允许您关联一个窗口和其它窗口,这样可以实现专属窗口总是排在它的所有者的前面(基于Z轴排序)。在没有专属窗口之前,我们要实现这个功能借助许多API,比如激活事件, orderInBackOf, orderInFrontOf, orderToBack, 和 orderToFront API等等。但是有了专属窗口,这些事情就容易多了,您只需要使用NativeWindowInitOptions  对象,将所有者传递给一个新的窗口,然后AIR运行时会帮您实现后面的事情。非常简单。
  • StageWebView中的位图捕捉. StageWebView 新提供的drawViewPortToBitmapData 方法允许您绘制一个StageWebView 对象到一个位图。这个特性可能有两种使用情况。首先且最常见的情况是为StageWebView对象捕获一张屏幕截图,第二种情况则是定位Flash内容在StageWebView之上。由于不可能将Flash内容放置在一个StageWebView 对象的上面(Flash内容总是在下面绘制),所以一旦您有这样的需求,可以先捕获当前StageWebView 的截图,并用这个位图替换StageWebView ,然后您就可以将Flash内容放置它的上面了。
  • iOS麦克风支持. 现在已经提供了针对 iOS的麦克风的API了.
  • iOS中的网页视图(StageWebView ). 就像在Android一样, StageWebView 现在可以工作在iOS中了(译者注:使用这个机制,我们可以在应用中显示HTML页面,有点类似于我们在Flex开发中偶尔会借助Iframe显示HTML,但StageWebView 是原生支持的).
  • iOS多任务支持. 使用AIR2.6,我们的AIR应用在iOS上就可以在用户进入或离开应用的时候,捕获到激活或不活动事件。AIR应用可以选择恢复而不是重新启动(除非基于某些原因,操作系统要干掉这个应用)。
  • iOS视网膜显示屏支持. 不言自明,2.6可以支持高分辨率屏幕的iPhone4和iPod touch(326PPI),和更高分辨率的图标。
  • iOS CameraCameraUI,  CameraRoll 支持. Camera and CameraUI API现在可以用于iOS了, 就像在Android上一样. (如果您还不了解这几个API,请阅读 How to Use CameraUI in a Cross-platform Way ).
  • iOS硬件加速. 就像在Android上一样,AIR在iOS上也启用了硬件加速,来提供更好的性能。
  • PFI 变成了ADT. 注意我们之前用的 PFI (Packager for iPhone) 已经过时了, 它的功能已经被整合到ADT(译者注:大家可能还记得我们之前需要用这个工具将Flash应用打包到iPhone上使用). ADT 现在可以被用来打包 AIR文件, 本地桌面程序安装文件, Android应用, 和 iOS应用.另外iOS应用(IPA文件)可以在Windows平台下使用ADT和iTunes编译和复制到iOS设备上。非常简单。
  • 可配置的软键盘激活. 当移动设备中的一个AIR应用中的文本输入框获得了焦点,通常会出现一个软键盘,并且如何键盘遮盖了文本输入框,则UI会自动移动以便保证文本框不被遮盖。现在这个行为是可配置的。默认情况下,如果使用2.6,什么都不会改变,开发者可以使用应用描述设置来改变默认设置。使用<softKeyboardBehavior> 并设置为none,UI将不会自动移动。如果使用的是默认行为,开发者可以侦听Stage 的softKeyboardActivating 事件,并使用softKeyboardRect 属性来修改他们的应用的布局。
  • 编程控制屏幕键盘的显示. 在 InteractiveObject上使用新的requestSoftKeyboard() 方法, 还可以配合needsSoftKeyboard 和 softKeyboardInputAreaOfInterest 属性, 开发者现在有较完整的方式来编程控制屏幕键盘的显示。
  • 支持Amazon Android Market. 基于 AIR 2.6 SDK 构建的AIR应用可以被发布到新的Amazin Appstore for Android. 点击这篇文章查看详情: AIR 2.6 Applications and the Amazon Appstore for Android .
  • Linux下的矢量打印支持. 如果您的打印机工作在Linux系统下,那么可以使用AIR的矢量打印.
  • 本地光标支持. 这是一个比较大的特性。如果您之前在Flash或Flex项目中尝试过更改光标显示,您就会知道那是会引起一些问题的,比如性能问题,运动鼠标导致CPU占用率上升等等。基于AIR2.6,开发者可以使用真正的本地光标。新的MouseCursorData类可以通过一个或多个位图和一个坐标点,来创建本地光标。
  • 通过USB接口完成基于设备的调试 (Android only). 现在可以不使用WIFI来调试了,可以通过USB连接来调试(译者注:确实是好消息,不是随时都能找到可用于调试的局域网WIFI的)。
  • 本地菜单事件细化. 这是一个微小的调整,但比较重要,增加了若干事件类型,以便我们更细致的控制本地菜单的显示和事件处理。
  • Android上增强文本支持. 也是一个比较重要的更新. 针对Android,AIR 2.6 现在支持文本滚动,文本选择,和文本上下文菜单(剪切,复制,粘贴)。
  • NetConnection.httpIdleTimeout. 在 AIR 2, 我们添加了URLRequest.idleTimeout 和URLRequestDefaults.idleTimeout 属性. 在 AIR 2.6中, 我们为 NetConnection添加了同样的支持,就是 新的httpIdleTimeout 属性.
  • 绑定了 Android USB 驱动 (WindowsAIR 2.6 SDK 绑定了支持大部分Android设备的Windows驱动,更方便于我们的开发和测试.
  • 支持 vipaccess:// URI. 这个 vipaccess:// URI 用于调用 VeriSign’s VIP 服务.
  • -version flag for ADT. 可以通过这个编译参数启动不同版本的ADT.

后面我们将为大家带来更多AIR2.6和移动开发相关的内容,敬请期待。

相关主题: 
昵    称:
验证码:

相关文档: