Adobe AIR 完整入门教程
第一部分:什么是 Adobe AIR?
在开始之前,我们首先要明白 AIR 是什么,以及它能做什么。

核心定义 Adobe AIR (Adobe Integrated Runtime) 是一个跨平台的运行时环境,由 Adobe 开发,它的核心思想是:让你使用熟悉的 Web 技术(HTML, CSS, JavaScript)或 Adobe 的 Flash 技术(ActionScript, Flex)来构建和部署桌面应用程序和移动应用程序。
一个生动的比喻 你可以把 AIR 想象成一个“包装盒”或者“容器”。
- 盒子里装的是什么? 你的应用代码,比如一个用 HTML/CSS/JS 写的网站。
- 这个盒子有什么用? 它为你的网站提供了传统桌面应用的能力,
- 文件系统访问:可以读取和写入用户的电脑文件。
- 本地数据库:可以在设备上存储数据(如 SQLite)。
- 原生窗口:创建和控制桌面窗口,而不是在浏览器里。
- 系统通知:在任务栏或系统托盘显示通知。
- 硬件交互:访问摄像头、麦克风、加速度计等设备。
- 拖放操作:让用户可以直接把文件拖到你的应用窗口里。
AIR 的核心优势
- 跨平台:一套代码,可以打包成 Windows、macOS、Android 和 iOS 的应用,大大减少了多平台开发的成本。
- 技术复用:如果你已经是 Web 开发者(前端)或 Flash 开发者,学习成本极低,可以直接利用现有技能。
- 快速原型:开发周期短,可以快速将想法变为可运行的原型。
- 强大的离线能力:天生支持离线运行,数据存储在本地。
适用场景

- 桌面工具:文件管理器、FTP 客户端、聊天软件、简单的生产力工具。
- 移动应用展示类应用、电子书阅读器、简单的游戏、企业内部工具。
- Kiosk 应用:在信息亭、展会上展示内容的应用。
第二部分:开发环境准备
在开始编码之前,你需要准备好工具。
必需软件
- 代码编辑器:
- Visual Studio Code (推荐):免费、强大、插件丰富,推荐安装
Live Server插件用于本地调试。 - Adobe Flash Builder / Adobe Animate:如果你使用 ActionScript/Flex,这是官方 IDE。
- Visual Studio Code (推荐):免费、强大、插件丰富,推荐安装
- AIR SDK (Software Development Kit):这是编译和打包应用的核心,你可以从 Adobe 官网下载(现在需要 Adobe ID 登录),或者使用第三方维护的 SDK,如 FlexJS SDK 或 Rust 编译器 Haxe 的 SDK。
- (可选)Adobe AIR Debug Launcher (ADL):用于在本地快速测试 AIR 应用,通常包含在 AIR SDK 中。
环境配置(以 VS Code + AIR SDK 为例)
- 下载 AIR SDK:从 Adobe 官网下载并解压到一个固定位置,
C:\air_sdk。 - 配置环境变量:
- 在系统环境变量中,新建一个变量
AIR_SDK_HOME,值为你的 SDK 路径(如C:\air_sdk)。 - 编辑
Path变量,添加%AIR_SDK_HOME%\bin。 - 这样你就可以在命令行的任何位置直接使用
adt(Adobe Tool)命令了。
- 在系统环境变量中,新建一个变量
- 验证安装:打开命令行(CMD 或 PowerShell),输入
adt -version,如果显示版本号,说明配置成功。
第三部分:你的第一个 AIR 应用 (HTML/JS 方式)
我们将创建一个最简单的桌面应用,它只是一个窗口,里面显示一个网页。

目标:创建一个桌面窗口,显示 "Hello, AIR World!"。
步骤 1:创建项目文件夹
在你的电脑上创建一个新文件夹,MyFirstAIRApp。
步骤 2:编写 HTML 文件
在 MyFirstAIRApp 文件夹中,创建一个名为 index.html 的文件,内容如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">Hello AIR</title>
<style>
body {
font-family: Arial, sans-serif;
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;
background-color: #f0f0f0;
}
h1 {
color: #333;
}
</style>
</head>
<body>
<h1>Hello, AIR World!</h1>
</body>
</html>
步骤 3:创建 AIR 应用描述文件 (XML) 这是 AIR 应用的“灵魂”,它告诉 AIR 运行时如何创建和管理你的应用。
在 MyFirstAIRApp 文件夹中,创建一个名为 application.xml 的文件,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://ns.adobe.com/air/application/34.0">
<!--
AIR SDK 版本号,请根据你下载的 SDK 版本修改
如果你用的是 AIR SDK 34,就写 34.0
-->
<id>com.example.helloair</id>
<versionNumber>1.0.0</versionNumber>
<filename>HelloAIR</filename>
<name>Hello AIR App</name>
<description>My first Adobe AIR application.</description>
<initialWindow>
<!-- 窗口标题 -->
<title>Hello AIR Window</title>
<!-- 窗口宽度 -->
<width>600</width>
<!-- 窗口高度 -->
<height>400</height>
<!-- 窗口是否可调整大小 -->
<resizable>true</resizable>
</initialWindow>
</application>
注意:xmlns 属性中的 0 是 AIR SDK 的版本号,请务必与你下载的版本保持一致。
步骤 4:本地测试
在命令行中,切换到你的项目文件夹 (MyFirstAIRApp),然后运行以下命令:
adl application.xml
如果一切顺利,你应该会看到一个标题为 "Hello AIR Window" 的桌面窗口,里面显示着 "Hello, AIR World!",恭喜你,你的第一个 AIR 应用运行成功了!
步骤 5:打包成安装程序
我们将这个应用打包成一个 .exe (Windows) 或 .app (macOS) 文件,这样别人就可以安装使用了。
在命令行中,继续输入以下命令(以 Windows 为例):
adt -package -storetype pkcs12 -keystore myCert.p12 -storepass mypassword HelloAIR.air application.xml index.html
命令解释:
adt -package:表示打包。-storetype pkcs12:指定证书类型。-keystore myCert.p12:指定证书文件名,如果文件不存在,adt 会自动创建一个。-storepass mypassword:指定证书密码。请使用你自己的强密码。HelloAIR.air:这是打包后的 AIR 安装包文件。application.xml:你的应用描述文件。index.html:你的应用主文件。
执行后,你会得到一个 HelloAIR.air 文件,双击它,就可以像安装普通软件一样安装你的应用了。
第四部分:进阶概念与 API 使用
一个静态的窗口没什么意思,我们来让它动起来,并与系统交互。
使用 AIR API
在 HTML/JS 开发中,你需要通过一个特殊的 JavaScript 对象 window.runtime 来访问 AIR 的原生 API。
示例:获取并显示用户桌面路径
修改你的 index.html 文件,添加一些 JavaScript 代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">Hello AIR</title>
<style>
body { font-family: Arial, sans-serif; padding: 20px; }
#info-box { background-color: #e0e0e0; padding: 15px; border-radius: 5px; }
</style>
</head>
<body>
<h1>Hello, AIR World!</h1>
<div id="info-box">
<p>正在获取桌面路径...</p>
</div>
<script>
// 检查 AIR API 是否可用
if (window.runtime) {
// 使用 File 类来访问文件系统
var file = runtime.flash.filesystem.File;
// 获取用户的桌面目录
var desktopPath = file.desktopDirectory.resolvePath("");
// 将路径显示在页面上
document.getElementById('info-box').innerHTML =
"<strong>你的桌面路径是:</strong><br>" + desktopPath.nativePath;
} else {
document.getElementById('info-box').innerHTML =
"此应用未在 Adobe AIR 环境中运行。";
}
</script>
</body>
</html>
用 adl application.xml 重新运行你的应用,你应该会看到窗口中显示了你的电脑桌面文件夹的完整路径,这就是 AIR API 的强大之处!
常用 AIR API 概览
- 文件系统 (
flash.filesystem):File: 代表文件或目录。FileStream: 用于读写文件内容。
- 本地数据库 (
flash.data):SQLConnection: 连接到 SQLite 数据库。SQLStatement: 执行 SQL 查询。
- 窗口 (
flash.display):NativeWindow: 创建和控制原生窗口,可以设置透明度、形状、始终置顶等。
- 系统 (
flash.system):Clipboard: 访问系统剪贴板。NativeApplication: 控制应用本身,如监听退出事件、显示图标菜单。
- 桌面 (
flash.desktop):Icon: 设置应用图标。Notification: 显示系统通知(托盘通知)。
第五部分:AIR 的现状与未来
重要提示:Adobe AIR 已不再是主流技术。
- 移动端:Adobe 已于 2025 年正式停止了对 AIR 移动应用(iOS/Android)的支持,这意味着你无法再将新的 AIR 项目发布到移动应用商店,并且现有应用在未来也可能因系统更新而无法运行。
- 桌面端:Adobe 仍然为桌面版 AIR 提供更新和安全补丁,但它不再是 Adobe 的战略重点,许多开发者已经转向了更现代的桌面技术,如 Electron (使用 Web 技术,VS Code, Slack, Discord 都是基于它)、Tauri (更轻量级的 Rust 方案) 或原生开发。
现在还应该学 AIR 吗?
- 如果你需要维护旧的 AIR 项目:那么这份教程对你至关重要。
- 如果你是企业开发者,需要快速构建一个跨平台的内部工具:AIR 仍然是一个快速有效的选择,尤其是在你已经熟悉 Flash/ActionScript 的情况下。
- 如果你是个人学习者或想进入游戏行业:了解 AIR 的历史和原理是有益的,但对于新项目,建议直接学习 Unity 或 Godot 等现代游戏引擎,很多经典 Flash 游戏(如《城堡保卫战》)的移动端移植就是用 AIR 完成的。
第六部分:学习资源与总结
官方资源 (可能已过时但仍有价值)
- Adobe AIR 开发者中心:曾经的官方文档中心,包含大量教程和 API 参考。
- Adobe AIR 文档:API 参考,查找特定类和方法的最佳去处。
社区与第三方资源
- GitHub:搜索
Adobe AIR或AIR SDK,可以找到很多开源项目和 SDK 分支。 - Stack Overflow:搜索
adobe-air标签,可以找到很多历史问题和解决方案。 - Haxe 语言:一个现代的编程语言,可以编译成 ActionScript,是很多现代 AIR 开发者的选择。
Adobe AIR 是一个曾经辉煌的跨平台技术,它巧妙地将 Web 和桌面世界连接起来,虽然它的移动时代已经结束,但在桌面端,它依然是一个快速、可靠的选择,尤其适合维护旧项目或开发特定类型的工具。
希望这份教程能帮助你打开 Adobe AIR 的大门,祝你开发愉快!
