使用 Flex SDK 建立您的第一個桌上型 AIR 應用程式

若要親身體驗 Adobe® AIR® 的運作方式,請使用這些指示來利用 Flex SDK 建立簡單的 SWF 類型的 AIR "Hello World" 應用程式。這個教學課程會顯示如何使用 Flex SDK (Flex SDK 包括 AIR SDK) 提供的命令列工具來編譯、測試和封裝 AIR 應用程式。

您必須安裝執行階段並設定 Adobe® Flex™,才能夠開始。本教學課程使用 AMXMLC 編譯器、AIR Debug Launcher (ADL) 以及 AIR Developer Tool (ADT)。您可以在 Flex SDK 的 bin 目錄中找到這些程式 (請參閱 設定 Flex SDK )。

建立 AIR 應用程式描述器檔案

本節描述如何建立應用程式描述器,這是內含以下結構的 XML 檔案:

<application xmlns="..."> 
    <id>...</id> 
    <versionNumber>...</versionNumber> 
    <filename>…</filename> 
    <initialWindow> 
        <content>…</content> 
        <visible>…</visible> 
        <width>…</width> 
        <height>…</height> 
    </initialWindow> 
</application>
  1. 建立名稱為 HelloWorld-app.xml 的 XML 檔案,然後儲存至專案目錄。

  2. 加入 <application> 元素,同時包括 AIR 命名空間特質:

    <application xmlns="http://ns.adobe.com/air/application/2.7"> :命名空間的最後一個區段 (「2.7」) 表示應用程式所需的執行階段版本。

  3. 新增 <id> 元素:

    <id>samples.flex.HelloWorld</id> :應用程式 ID 連同發行者 ID (由 AIR 衍生自用來簽署應用程式套件的憑證) 可識別應用程式的唯一性。建議的格式為逗點分隔的反向 DNS 樣式字串,例如 "com.company.AppName" 。應用程式 ID 的用途為安裝、存取私有應用程式檔案系統儲存目錄、存取私有加密儲存,以及應用程式之間的通訊。

  4. 新增 <versionNumber> 元素:

    <versionNumber>1.0</versionNumber> :協助使用者判斷所安裝的應用程式版本。

    備註: 若是使用 AIR 2 或更早版本,您必須使用 <version> 元素而非 <versionNumber> 元素。
  5. 加入 <filename> 元素:

    <filename>HelloWorld</filename> :應用程式執行檔、安裝目錄以及作業系統中類似參考使用的名稱。

  6. 新增 <initialWindow> 元素,其中包含下列子元素,以指定初始應用程式視窗的屬性:

    <content>HelloWorld.swf</content> :識別供 AIR 載入的根 SWF 檔案。

    <visible>true</visible> :可立即顯示視窗。

    <width>400</width> :設定視窗寬度 (以像素為單位)。

    <height>200</height> :設定視窗高度。

  7. 儲存檔案。您的完整應用程式描述器檔案可能看起來如下:

    <?xml version="1.0" encoding="UTF-8"?> 
    <application xmlns="http://ns.adobe.com/air/application/2.7"> 
        <id>samples.flex.HelloWorld</id> 
        <versionNumber>0.1</versionNumber> 
        <filename>HelloWorld</filename> 
        <initialWindow> 
            <content>HelloWorld.swf</content> 
            <visible>true</visible> 
            <width>400</width> 
            <height>200</height> 
        </initialWindow> 
    </application>

這個範例僅設定一些可能的應用程式屬性。如需用來指定視窗顏色、視窗大小、透明度、預設安裝目錄、關聯檔案類型以及應用程式圖示等的全套應用程式屬性說明,請參閱 AIR 應用程式描述器檔案

撰寫應用程式程式碼

備註: SWF 類型的 AIR 應用程式可以使用 MXML 或 Adobe® ActionScript® 3.0 定義的主要類別。此範例使用 MXML 檔案來定義它的主要類別。使用主要 ActionScript 類別來建立 AIR 應用程式的程序都類似。 不用將 MXML 檔案編譯成 SWF 檔案,您只要編譯 ActionScript 類別檔案即可。使用 ActionScript 的時候,主要類別必須擴充 flash.display.Sprite。

和所有 Flex 類型的應用程式一樣,使用 Flex 架構建立的 AIR 應用程式包含一個主要的 MXML 檔案。桌上型 AIR 應用程式會使用 WindowedApplication 組件當做根元素,而不是使用 Application 組件。WindowedApplication 組件提供各種屬性、方法和事件,用來控制應用程式及其初始視窗。在 AIR 不支援多個視窗的平台與描述檔上,請繼續使用 Application 組件。在行動 Flex 應用程式中,您也可以使用 View 或 TabbedViewNavigatorApplication 組件。

以下程序會建立 Hello World 應用程式:

  1. 使用文字編輯器,建立名稱為 HelloWorld.mxml 的檔案,然後加入以下的 MXML 程式碼:

    <?xml version="1.0" encoding="utf-8"?> 
    <s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009" 
                           xmlns:s="library://ns.adobe.com/flex/spark" 
                           xmlns:mx="library://ns.adobe.com/flex/mx" 
                           title="Hello World"> 
    </s:WindowedApplication>
  2. 接下來,將 Label 組件加入應用程式 (放到 WindowedApplication 標籤內)。

  3. 將 Label 組件的 text 屬性設定成 "Hello AIR"

  4. 將佈局限制設成永遠保持在中央。

    以下範例顯示到目前為止的程式碼:

    <?xml version="1.0" encoding="utf-8"?> 
    <s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009" 
                           xmlns:s="library://ns.adobe.com/flex/spark" 
                           xmlns:mx="library://ns.adobe.com/flex/mx" 
                           title="Hello World"> 
         
        <s:Label text="Hello AIR" horizontalCenter="0" verticalCenter="0"/> 
    </s:WindowedApplication>

編譯應用程式

使用 amxmlc 編譯器將 MXML 程式碼編譯成 SWF 檔案,才能執行應用程式並進行除錯。您可以在 Flex SDK 資料夾的 bin 目錄中找到 amxmlc 編譯器。如果需要,您可以將電腦的路徑環境設定成包括 Flex SDK bin 目錄。設定這個路徑可以更方便地在命令列執行公用程式。

  1. 開啟命令殼層或終端機,然後瀏覽至 AIR 應用程式的專案資料夾。

  2. 輸入下列命令:

    amxmlc HelloWorld.mxml 

執行 amxmlc 會產生 HelloWorld.swf ,它包含應用程式的已編譯程式碼。

備註: 若應用程式未編譯,請修正語法或拼字錯誤。錯誤和警告會顯示在用來執行 AMXMLC 編譯器的主控台視窗。

如需詳細資訊,請參閱 編譯 AIR 的 MXML 和 ActionScript 原始檔案

測試應用程式

若要從命令列執行並測試應用程式,請使用 AIR Debug Launcher (ADL),並利用其應用程式描述器檔案來啟動應用程式 (您可以在 Flex SDK 資料夾的 bin 目錄中找到 ADL)。

從命令提示字元輸入以下命令:
adl HelloWorld-app.xml 

產生的 AIR 應用程式會與下圖類似:

使用 Label 控制項的 horizontalCenter 和 verticalCenter 屬性,將文字放置在視窗的中央。移動或調整視窗大小的方式,與其他任何桌面應用程式相同。

如需詳細資訊,請參閱 AIR Debug Launcher (ADL)

建立 AIR 安裝檔案

應用程式成功執行後,可以使用 ADT 公用程式將應用程式封裝成 AIR 安裝檔案。AIR 安裝檔案是包含所有應用程式檔案的存檔檔案,供您散佈給使用者。安裝封裝的 AIR 檔之前必須先安裝 Adobe AIR。

為了確保應用程式安全,所有 AIR 安裝檔案都必須經過數位簽名。您可以使用 ADT 或其他憑證產生工具來產生基本的自我簽署憑證,供開發使用。您也可以向商業憑證授權單位購買商業程式碼簽署憑證。 使用者安裝自我簽署 AIR 檔時,安裝過程中會顯示發行者「不明」。這是因為自我簽署憑證僅保證 AIR 檔在建立後未曾變更。沒有辦法防止別人在偽裝的 AIR 檔中加入自我簽署來假冒是您的應用程式。強烈建議對公開發行的 AIR 檔案使用可驗證的商業憑證。如需 AIR 安全性問題的概觀,請參閱 AIR 安全性 (適用於 ActionScript 開發人員) 或 AIR security (適用於 HTML 開發人員)。

產生自我簽署憑證和金鑰組

從命令提示字元輸入以下命令 (您可以在 Flex SDK 的 bin 目錄找到 ADT 執行檔):
adt -certificate -cn SelfSigned 1024-RSA sampleCert.pfx samplePassword

這個範例使用最少數目的特質設定憑證。金鑰類型必須是 1024-RSA 或 2048-RSA (請參閱 簽署 AIR 應用程式 )。

建立 AIR 套件

從命令提示字元輸入下列命令 (在同一行中):
adt -package -storetype pkcs12 -keystore sampleCert.pfx HelloWorld.air 
HelloWorld-app.xml HelloWorld.swf

將會出現提示,要求您提供金鑰儲存檔案密碼。輸入密碼並按 Enter 鍵。基於安全理由,不會顯示密碼字元。

HelloWorld.air 引數是 ADT 產生的 AIR 檔。HelloWorld-app.xml 是應用程式描述器檔案。後續引數是您的應用程式使用的各個檔案。這個範例僅使用三個檔案,但您可以加入任何數目的檔案和目錄。

建立好 AIR 套件後,您可以按兩下套件檔案來安裝並執行應用程式。您還可以在殼層或命令視窗中輸入 AIR 檔案名稱當做命令。

如需詳細資訊,請參閱 封裝桌上型 AIR 安裝檔案