发行日期: 2009 年 2 月 24 日
欢迎阅读 AIR 1.5.1 的发行说明。本文档包含系统要求、安装说明、已知问题以及有关使用 AIR 1.5.1 运行时的其它信息。
| Windows® | Macintosh® | Linux | |
|---|---|---|---|
| 处理器 | 最低: Intel® Pentium® III 1GHz 或更快; 推荐: Pentium 4 2GHz 或更快 | Intel® Core™ Duo 1.83GHz 或更快 PowerPC® G4 1GHz 或更快 | Intel® Pentium® III 1GHz 或更快 |
| 操作系统 | Windows Vista® Home Premium、Business、Ultimate 或 Enterprise (包括 64 位版本); Windows Vista SP1、Windows XP Tablet PC Edition SP2 和 SP3、Windows XP SP2 和 SP3、Windows 2000 SP4、Windows 2003 Server | Mac OS 10.4.11 or Mac OS 10.5.4 | Fedora 8 Ubuntu 7.10 openSUSE 10.3 |
| 内存 | 最低: 512MB RAM; 推荐: 1GB RAM | 最低: 512MB RAM; 推荐: 1GB RAM | 最低: 512MB RAM; 推荐: 1GB RAM 128MB 图形内存 |
| 支持的桌面环境 | GNOME KDE |
| 软件包管理系统 | RPM Debian |
| GTK+ 最低版本 | 2.6 |
| 窗口管理器 | Metacity (GNOME 的默认窗口管理器)、KWin (KDE 的默认窗口管理器) |
| 透明度 | 如欲在 AIR 应用程序中支持透明度, 需要使用复合窗口管理器和其它 X 服务器扩展。支持的组件如下。复合窗口管理器: Beryl、Compiz、Compiz-fusion; X 服务器扩展: Composite、Render、Shape |
| Flash Player | 标志/无缝安装需要具有 Flash Player 10.0.15.3 才能正常运行 |
Adobe AIR 1.5.1 安装和运行时用户体验支持以下语言。
WebKit 版本: 34190
libXML 版本: Windows 中为 2.6.31, Mac/Linux 中为系统 libXML
Adobe AIR 1.5.1 是一个软件更新, 具有更高的可靠性、兼容性和安全性。推荐所有 AIR 用户使用。针对 AIR 早期版本开发的 AIR 应用程序无需进行更新, 即可使用此更新版本。
AIR 1.5.1 包含 Flash Player 插件的更新版本 (10.0.22), 在 HTML 内显示 SWF 文件时将使用该插件。有关详细信息, 请参阅 http://www.adobe.com/support/documentation/cn/flashplayer/releasenotes.html。
InvokeEvent.reason
这是 InvokeEvent 事件的新属性, 它指示应用程序是用户手动启动的, 还是在用户登录时自动启动的。InvokeEventReason 类 (在 flash.desktop 包中)为 InvokeEvent.reason 属性定义两个可能的字符串值。InvokeEventReason.LOGIN 定义登录情况; InvokeEventReason.STANDARD 定义标准情况。
Capabilities.cpuArchitecture
这个新属性以字符串形式返回计算机的处理器体系结构, 如“PowerPC”或“x86”。
如果要利用这些新增的 AIR 1.5.1 API, 请将应用程序描述符更新为使用 1.5.1 命名空间:
xmlns="http://ns.adobe.com/air/application/1.5.1"
如果不需要使用这些新增的 API, 则无须更新应用程序描述符。用户更新其系统上安装的运行时版本后, 您的应用程序即可在 AIR 1.5.1 环境下运行。
有关在 Flex Builder 中叠加 AIR 1.5.1 SDK 的信息, 请参阅后文“如何通过叠加使 AIR SDK 能配合 Flex SDK 使用”一节。
AIR 1.5.1 中修复了以下错误。
| 错误编号 | 错误名称 |
| 1925659 | 无法在全屏模式下显示 HTML 中的 SWF |
| 1932338 | “Shift+空格”在 AIR 1.5 中无效 |
| 2268571 | 在文本字段中, 从左向右加亮显示文本时, 无法选中第一个字符 |
| 2266748 | “被加载项”SWF 8 / AS2 中的静态变量返回为默认值 |
| 2265829 | 当 designMode 为“on”时, 将忽略 Tab 键 |
| 2262386 | 当用户向剪贴板复制含有危险字符的本地字符串时, air:text 格式的显示中将有乱码 |
| 2261941 | 视频播放过程中, 内存使用量变大 |
| 2260236 | 使用键盘导航时, 选择框选项不加亮显示 |
| 2259612 | Mac: SAML 令牌到期之后, 应用程序死锁 |
| 2259477 | TweetDeck 长时间运行之后, 将会崩溃 |
| 2258322 | 在舞台范围内单击鼠标, 然后在舞台范围外移动鼠标时, 捕获阶段中无法捕获 mouseMove 事件 |
| 2257566 | Flash UI 组件复选框鼠标事件引发两次 |
| 2257004 | 将 z 顺序设置为始终在前面时, JavaScript 警告/提示对话框出现在 AIR 应用程序的后面 |
| 2255290 | HTML: 当 <td> 标记嵌入在 HTMLoader 中时, IME 可以在 HTML 中编辑该标记的值 |
| 2255206 | 从网站重新安装应用程序时, 显示错误消息 |
| 2253281 | HTML: 对于更改“src”的 IFRAME, 不会再次调用 ondomInitialize 处理函数 |
| 2253199 | uvLayer 应用程序不启动 |
| 2248950 | navigateURL 应关联 http 服务的默认打开程序, 而非 .htm 文件扩展名 |
| 2248890 | Mac: 无法通过 APPL-M 键盘快捷键最小化自定义镶边应用程序 |
| 2248040 | Windows: 当上载的文件是 AIR 文件、JPEG 文件或某些 Charles 文件时, FileReference.uploadUnencoded 将导致 AIR 应用程序崩溃 |
| 1935922 | Windows: 当“HKCR\.css\Content Type”注册表项的值变为“text/css”之外的内容时, 无法应用 CSS |
| 1935788 | Mac: 打印作业过程中有大量内存泄漏 |
| 1933189 | 简体中文: 在运行时 SWF 区域中的文本字段内键入字符时, 候选窗口显示在 IME 应用程序的左上角 |
| 1933043 | 应用程序卸载完毕时, 将显示 3003 错误 |
| 1931501 | 尝试访问不再加载的 HTML DOM 时, AIR 1.5 崩溃 |
| 1931213 | 输入泰语、罗马尼亚语键盘时, 产生一个多余的控制字符 |
| 1929305 | WebKit 错误 18066: 回归: createAttribute 引发 NAMESPACE_ERR 异常 |
| 1927058 | 向后兼容性: 在 SWF9 AIR 1.1 应用程序中, 不能无提示地加载 Flash 10 SWF“被加载项” |
| 1926178 | 安装 Safari AdBlock 后, 只要引用 HTMLLoader, AIR 便会因 [ WebFontCache fontWithFamily:traits:weight:size: ] 错误而崩溃 |
| 1925648 | 剪贴板文本字符串与存储的字符串不匹配, 且 get.getData(ClipboardFormats.TEXT_FORMAT) 为 String (在 1.1 中有效) |
| 1924182 | WebKit 错误: 当通过 Function.apply 调用 arguments.callee.caller 函数时, 该函数返回 null, 这将影响 Mootools 1.2 JS 框架中的淡入淡出效果 |
| 1918284 | 英语: AIR 应用程序: 仅 Mac 和 AIR 1.5: 登录共享之后, AIR 应用程序崩溃 |
| 1918283 | 英语: AIR 应用程序: 仅 Mac 和 AIR 1.5: AIR 应用程序从小组件模式还原之后崩溃 |
| 1916616 | Windows: 通过设置 elem.style.fontSize 逐级放大/缩小 (例如在 8 像素与 22 像素之间) 字体时, 出现乱码文本。 |
| 1914838 | 应用程序安装对话框显示空白区域, 使对话框变大 |
| 1913529 | MS OEM 认证: AIR: AIR 运行时的卸载注册表项未设置值。“InstallLocation”为 null |
| 1824666 | 执行从标志安装或桌面安装调用的立即更新时, 不清除以前下载的运行时更新 |
| 1674798 | Mac: 在轨迹板上滚动导致 AIR 中 mouseWheel 事件 delta 属性的值无效 |
| 错误编号 | 错误名称 |
| 2252906 | 如果在未安装 AIR 的计算机上使用标志安装已验证的应用程序, 则该应用程序的签名验证失败 |
| 2252413 | 代码签名证书存储区中缺少 Globalsign 证书 |
| 2267723 | “始终允许”按钮在 SSL 证书对话框中不起作用 |
| 2264535 | 设置安全网络代理后, 只要同时进行多个连接, 就会弹出多个身份验证对话框 |
| 2258084 | 在 Fedora 10 和 openSUSE 10.3 中, 无法通过标志安装 AIR 运行时/应用程序 |
| 2254076 | 当前 IME 和键盘焦点移至密码字段上时, 如果设置了 ATOK, AIR 应用程序就会崩溃 |
| 2252364 | 在全屏模式下返回的窗口范围 (x、y、高度、宽度) 有误 |
| 2250903 | 首次通过标志安装并启动应用程序时, 透明度不起作用 |
| 1927221 | 在 Orbitzoom 应用程序中, 拖放有时会失败 |
| 1927214 | 在 QuickLoader 应用程序的客户端区域中, 图像不显示 |
| 1926714 | 在 Fanbase 应用程序中, 无法加载图像和视频 |
| 1925835 | 固定大小的无窗口 SWF 超出 HTMLLoader 的范围。此外, 如果 SWF 比 iframe 大, 则 SWF 超出 iframe 的范围 |
| 1924305 | 如果在最大化模式中关闭了 Adobe Media Player, 则下次启动时, AMP 停滞在“正在加载首选参数”处 |
| 1921820 | 透明 HTMLLoader 内的 SWF 使 AIR 应用程序崩溃 |
| 1871773 | 如果光标的焦点在文本区域上, 则以“Shift”为功能键的菜单加速键不起作用 |
| 1660295 | XMLHttpRequest: 即使已经确立了 http 身份验证, Linux 中的 HTMLLoader 仍会要求后续请求输入密码 |
| 2249983 | 在 ImageSharkUploader 应用程序中, 从常规剪贴板中上载大量图像会导致程序失败 |
| 1933894 | 将对象的 DragMoveEnabled 属性设置为 true 后, 从源到目标的对象移动操作会失败 |
| 1932654 | 对 klok 应用程序中创建的对象进行拖放操作是, 无法将源对象从原始位置移至所需位置 |
| 1930315 | 尝试从安全服务器加载 PDF 时, 由于 curl 中的内存损坏而发生崩溃 |
| 1930142 | 创建使用 Flash Player 10 的有窗口 SWF 文件之后, 上下文菜单会立即销毁 |
| 1929909 | 对同一台服务器上不同 URL 的身份验证失败 |
| 1928500 | 当用作容器的 HTMLLoader 对象在无窗口模式中变为透明时, SWF 文件没有变为不可见状态 |
| 1928171 | 若应用程序的 ID 或名称中有大写字符, 运行时卸载程序将无法显示应用程序图标 |
安装 AIR 1.5.1 运行时和 AIR 应用程序时, 要求您在目标计算机上具有管理员权限。
安装完运行时后, 可以按照以下过程卸载它。
为使客户端浏览器在下载 AIR 应用程序时能识别该应用程序, 承载 AIR 应用程序的 Web 服务器需要将 application/vnd.adobe.air-applicationinstaller-package+zip MIME 内容类型映射到“air”扩展名。例如, 对于 Apache Web 服务器, 请向 AddType 段添加以下内容:
AddType application/vnd.adobe.air-application-installer-package+zip .air
当使用 ADL 启动应用程序时, 默认情况下会启用调试支持。利用调试支持, 运行时将执行额外的检查, 生成额外的调试信息 (包括来自 Flex Builder 的调试信息), 同时还将显示未处理的异常对话。此外, 在使用调试支持时, 应用程序的运行速度可能会变慢。使用带有 -nodebug 标志的 adl 可以禁用调试支持。以 -nodebug 标志运行还可以更准确地模拟所安装应用程序的执行模式。
AIR 支持网站 http://www.adobe.com/support/air/* 提供了 AIR 问题知识库和其它有用的 AIR 文档。
如果操作系统的语言设置为“Español Latinoamérica” (拉丁美洲西班牙语), 则 AIR 应用程序可能无法正常运行。请从语言列表中删除该语言, 并改用“Español” (西班牙语)。
在 Acrobat/Reader 9.0 中, 如果由 HTMLLoader 以 app: 方案加载 PDF, 则从 HTML 到 PDF 的 HTML JavaScript 桥无效。解决方法是改用 file: 方案。Acrobat/Reader 9.1 中修正了此问题。
在 Windows 中, 当应用程序使用由 HTMLLoader 加载的无窗口模式 SWF 时, Ctrl+V 在文本字段中无法粘贴。
在 Windows 上使用 HTMLLoader 时, 不支持来自 PUT、POST 或 DELETE 方法的自动重定向。AIR 也不支持对 XMLHTTP 响应进行 flat 或 gzip 解压缩。
单击用于加载图像 (而非 HTML 页) 的链接时, 不会呈现图像, 而是显示图像的字节数。
对于 NativeMenuItem.data 属性, 此发行版不支持 int 或 Number 对象。
对 ContextMenu.visible 属性的设置无效。将项目的 visible 属性设置为 false 时, 项目在 ContextMenu 中保持可见状态。我们建议改用 enabled 属性。
少数民族文字字符 (如藏文) 在 AIR 应用程序中可能无法正确显示。
如果将 AIR 应用程序安装到 64 位“Program Files”文件夹, 将引发一个错误, 表示无法安装该应用程序。但仍会将应用程序安装到“Program Files(x86)”文件夹。
在 Mac 操作系统上, 使用带有 PDF 打开参数的 app: URL 方案 (如 app:/myfiles/test.pdf#page=2) 时, 无法完成加载。
解决方法是序列化数据, 以毫秒为单位传递日期/时间。
解决方法是将 iframe 设置为小于 100% 的值。
在 resize 事件处理函数中进行读取时, 报告的 NativeWindow.height 属性有误。解决方法是改用事件的 afterBounds.height 属性。
如果为 userIdle 事件进行注册后, 设置 NativeApplication 对象的 idleThreshold 属性, 将得到默认的 idleThreshold 设置, 而非您设置的值。解决方法是注销事件处理函数, 设置阈值, 然后重新注册。
如果系统中的 mm.cfg 文件包含参数 TraceOutputFileEnable=1, 则不会向控制台发送任何跟踪输出。解决方法是从 mm.cfg 文件中删除此参数。mm.cfg 文件在 Windows 上位于“C:\Documents and Settings\<用户名>”中, 在 Mac 操作系统上位于“\Users\<用户名>”中。
未向服务器发送 manageCookies=true 时, 会将标头“Cookie”传递给 URLRequest 对象的 requestHeaders 属性。
默认情况下, 一些证书供应商 (例如 VeriSign) 不提供完整的证书路径; 但为 AIR 应用程序签名需要使用完整的证书路径。有关创建带有完整证书链的密钥库的信息, 请参阅 http://access1.sun.com/techarticles/Keytool.html*。
在 Windows 上, 用户使用资源管理器为某个扩展名选择关联应用程序后, 使用 NativeApplication.setAsDefaultApplication() 会无法将 AIR 应用程序设置为默认应用程序。
ADT 当前不支持需要身份验证的代理设置。
在 Mac 上, 对停靠图标使用 NativeMenu.addItemAt(item, 0) 时, 将导致图标下的所有菜单项失去其 select 事件处理函数。解决方法是使用 NativeMenu.addItem()。若要使最后一项出现在菜单项的顶部, 请销毁旧菜单, 然后创建新菜单。
在一个同步函数中设置 NativeWindow 对象的 width、height 或 bounds 属性时, 如果在 resize 事件的处理函数中检查报告的 height 值, 该值将有误。
当在本机窗口中显示 HTMLLoader 内嵌有 Flash 内容的 HTML 时, 若本机窗口的大小小于 Flash 内容的大小, 则 Flash 内容将出现在滚动条之上。
对于使用 Adobe AIR HTML/JavaScript Application AIRIntrospector 的应用程序, 为使其能与 AIR 1.5 运行时配合使用, 必须将 AIRIntrospector 升级到 AIRIntrospector 的 AIR 1.5 版, 且必须重新构建应用程序。
在 AIR 1.5 中, 使用 loadString 方法加载到 HTMLLoader 中的内容默认将放置在非应用程序沙箱中, 以确保隔离不受信任的内容。如果内容受信任, 且您希望将其加载到应用程序沙箱中, 请将 HTMLLoader.placeLoadStringContentInApplicationSandbox 属性设置为 true。对于 AIR 1.1 和更早版本的应用程序, loadString 行为没有变化。
对于使用透明窗口的应用程序, HTML 中的 SWF 内容无法正确显示。
对于使用 RTMFP 和 P2P 的应用程序, 如果发布计算机的系统内存有限, 则音频可能会在 3 分钟后消失。
如果您正在使用 Adobe Flash Rights Management Server 1.0 或 1.0.1 版, 计划向使用 AIR 1.5 版的应用程序提供加密内容, 请与您的 Adobe 代表联系, 获取更新的 DRM_Section.xml 文件。FMRMS 1.5 客户已拥有此文件的更新版本。
在应用程序沙箱中, 如果 HTML 标记使用的 innerHTML 包含名称以“on”为前缀的属性, 则由于安全限制, 不会将这些属性转换为事件处理函数, 且失败时无提示, 也不引发异常。
可能会显示 AIR 安装程序的多个条目 (例如, 也添加到 Ubuntu 中的“其它”菜单)。
AIR 应用程序与 SWF 之间的 LocalConnection 需要 Flash Player 10。
若要在 AIR 应用程序中查看 PDF 内容, 应该安装 Adobe Reader for Linux 8.1.1 版或更高版本。
注: 不需要重新编译应用程序, 即可利用兼容性、稳定性和安全性的提高。但是, 若要利用此版本中引入的新 API, 则需要将应用程序描述符更新为 1.5.1 (请参阅新增的 API 一节), 并使用以下说明重新编译应用程序。
Flex SDK 和 Flex Builder 的发行说明可在以下位置找到: