Tworzenie pierwszej aplikacji AIR na komputery stacjonarne za pomocą zestawu SDK środowiska Flex

W celu uzyskania skróconych i praktycznych informacji o działaniu programu Adobe® AIR® należy wykorzystać te instrukcje w celu utworzenia jednej aplikacji AIR „Hello World” (wykorzystującej pliki SWF) w pakiecie Flex SDK. W tym samouczku pokazano, w jaki sposób kompilować, testować i pakować aplikacje AIR za pomocą narzędzi wiersza poleceń wchodzących w skład zestawu SDK środowiska Flex. (Zestaw SDK środowiska Flex zawiera zestaw SDK środowiska AIR).

Przed rozpoczęciem należy zainstalować środowisko wykonawcze i skonfigurować program Adobe® Flex™. W niniejszym samouczku wykorzystano kompilator AMXMLC , program AIR Debug Launcher (ADL) oraz program AIR Developer Tool (ADT). Te programy można znaleźć w katalogu bin pakietu Flex SDK (patrz Konfigurowanie Flex SDK ).

Tworzenie pliku deskryptora dla aplikacji AIR

W niniejszej sekcji opisano sposób tworzenia deskryptora aplikacji, który jest plikiem XML o następującej strukturze:

<application xmlns="..."> 
    <id>...</id> 
    <versionNumber>...</versionNumber> 
    <filename>…</filename> 
    <initialWindow> 
        <content>…</content> 
        <visible>…</visible> 
        <width>…</width> 
        <height>…</height> 
    </initialWindow> 
</application>
  1. Utwórz plik XML o nazwie HelloWorld-app.xml i zapisz go w katalogu projektu.

  2. Dodaj element <application> zawierający atrybut przestrzeni nazw AIR:

    <application xmlns="http://ns.adobe.com/air/application/2.7"> Ostatni segment przestrzeni nazw — „2.7” — określa wymaganą wersję środowiska wykonawczego.

  3. Dodaj element <id> :

    <id>samples.flex.HelloWorld</id> Identyfikator aplikacji w unikalny sposób identyfikuje aplikację wraz z identyfikatorem wydawcy (pobieranym przez AIR z certyfikatu używanego w celu podpisania pakietu aplikacji). Zalecaną formą jest rozdzielony kropkami ciąg znaków w stylu odwróconego adresu DNS, taki jak "com.firma.nazwa_aplikacji" . Identyfikator aplikacji jest używany w celu zainstalowania, uzyskania dostępu do prywatnego katalogu pamięci masowej systemu plików aplikacji, uzyskania dostępu do prywatnej zaszyfrowanej pamięci masowej, a także na potrzeby komunikacji wewnątrz aplikacji.

  4. Dodaj element <versionNumber> .

    <versionNumber>1.0</versionNumber> Ułatwia użytkownikom określenie, którą wersję aplikacji instalują.

    Uwaga: W przypadku korzystania ze środowiska AIR 2 lub starszego należy użyć elementu <version> zamiast elementu <versionNumber> .
  5. Dodaj element <filename> :

    <filename>HelloWorld</filename> Nazwa używana dla pliku wykonywalnego aplikacji, katalogu instalacyjnego, a także dla podobnych odwołań w systemie operacyjnym.

  6. Dodaj element <initialWindow> zawierający następujące elementy potomne w celu określenia właściwości dla początkowego okna aplikacji:

    <content>HelloWorld.swf</content> Identyfikuje główny plik SWF, który wczytuje środowisko AIR.

    <visible>true</visible> Powoduje natychmiastowe wyświetlenie okna.

    <width>400</width> Ustawia szerokość okna (w pikselach).

    <height>200</height> Ustawia wysokość okna.

  7. Zapisz plik. Zakończony plik deskryptora aplikacji powinien być następujący:

    <?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>

W tym przykładzie przedstawiono ustawianie tylko kilku możliwych właściwości aplikacji. Opis wszystkich właściwości aplikacji, które umożliwiają ustawianie takich elementów, jak karnacja okna, wielkość okna, przezroczystość, domyślny katalog instalacyjny, skojarzone typy plików oraz ikony aplikacji, zawiera sekcja Pliki deskryptora aplikacji AIR .

Pisanie kodu aplikacji

Uwaga: Aplikacje AIR oparte na plikach SWF mogą korzystać z głównej klasy zdefiniowanej w języku MXML lub w języku Adobe® ActionScript® 3.0. W tym przykładzie przedstawiono wykorzystanie pliku MXML w celu zdefiniowania klasy głównej. Proces tworzenia aplikacji AIR za pomocą klasy głównej ActionScript przebiega podobnie. Zamiast kompilować plik MXML do postaci pliku SWF należy skompilować plik klasy ActionScript. W przypadku korzystania z języka ActionScript główna klasa musi stanowić rozszerzenie klasy flash.display.Sprite.

Aplikacje AIR utworzone w środowisku Flex — podobnie jak wszystkie aplikacje oparte na Flex — zawierają główny plik MXML. Jako element główny w aplikacjach AIR na komputery stacjonarne zamiast składnika Application jest stosowany składnik WindowedApplication . Komponent WindowedApplication udostępnia właściwości, metody i zdarzenia przeznaczone do kontrolowania aplikacji i jej początkowego okna. Na platformach i w profilach, dla których środowisko AIR nie obsługuje wielu okien, należy nadal używać składnika Application. W aplikacjach Flex dla urządzeń przenośnych można również używać składników View lub TabbedViewNavigatorApplication.

Poniższa procedura tworzy aplikację Hello World:

  1. Za pomocą edytora tekstu utwórz plik o nazwie HelloWorld.mxml i dodaj następujący kod 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. Następnie dodaj komponent Label do aplikacji (umieść go w znaczniku WindowedApplication).

  3. Ustaw właściwość text komponentu Label na "Hello AIR".

  4. Zdefiniuj ograniczenia układu w taki sposób, aby napis był zawsze umieszczany na środku.

    Poniższy przykład prezentuje utworzony dotychczas kod:

    <?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>

Kompilowanie aplikacji

Zanim możliwe będzie uruchomienie i zdebugowanie aplikacji należy skompilować kod MXML — w celu utworzenia pliku SWF — za pomocą kompilatora amxmlc. Kompilator amxmlc jest dostępny w katalogu bin pakietu Flex SDK. W razie potrzeby można ustawić ścieżkę środowiska komputera w taki sposób, aby uwzględniała katalog bin pakietu Flex SDK. Ustawienie ścieżki ułatwia uruchamianie programów narzędziowych z wiersza poleceń.

  1. Otwórz powłokę lub terminal poleceń i przejdź do folderu projektu aplikacji AIR.

  2. Wprowadź następujące polecenie:

    amxmlc HelloWorld.mxml 

Uruchomienie kompilatora amxmlc spowoduje utworzenie pliku HelloWorld.swf , który zawiera skompilowany kod aplikacji.

Uwaga: Jeśli nie można skompilować aplikacji, usuń błędy składniowe lub błędy pisowni. W oknie konsoli używanym do uruchamiania kompilatora amxmlc zostaną wyświetlone błędy i ostrzeżenia.

Więcej informacji zawiera rozdział Kompilowanie plików źródłowych MXML i ActionScript dla środowiska AIR .

Testowanie aplikacji

W celu uruchomienia i przetestowania aplikacji z wiersza poleceń należy użyć programu AIR Debug Launcher (ADL), aby uruchomić aplikację za pomocą pliku deskryptora aplikacji. (Program ADL znajduje się w katalogu bin pakietu Flex SDK).

Do okna wiersza poleceń wprowadź następujące polecenie:
adl HelloWorld-app.xml 

Uzyskana wynikowa aplikacja AIR wygląda podobnie do przedstawionej na ilustracji:

Za pomocą właściwości horizontalCenter i verticalCenter elementu sterującego Label tekst należy umieścić na środku okna. Okno można przesuwać i powiększać/zmniejszać tak samo, jak okno każdej innej aplikacji.

Więcej informacji zawiera sekcja AIR Debug Launcher (ADL) .

Tworzenie pliku instalacyjnego AIR

Jeśli aplikacja działa pomyślnie, można użyć programu narzędziowego ADL w celu spakowania aplikacji do pliku instalacyjnego AIR. Plik instalacyjny AIR jest plikiem archiwum, który zawiera wszystkie pliki aplikacji, które można rozpowszechniać wśród użytkowników. Przed zainstalowaniem spakowanego pliku AIR należy zainstalować środowisko Adobe AIR.

Aby zapewnić bezpieczeństwo aplikacji, wszystkie pliki instalacyjne AIR muszą być podpisane cyfrowo. Programiści mogą generować podstawowe, samopodpisane certyfikaty za pomocą ADT lub innego narzędzia do generowania certyfikatów. Można również zakupić komercyjny certyfikat podpisujący kod w ośrodku certyfikacji. Gdy użytkownicy instalują samopodpisany plik AIR, podczas procesu instalowania wydawca jest określony jako „unknown”. Jest to spowodowane tym, że certyfikat samopodpisany gwarantuje tylko, że plik AIR nie został zmodyfikowany od czasu utworzenia. Jednak nic nie gwarantuje, że ktoś nie utworzył fałszywego samopodpisanego pliku AIR, który został przedstawiony jako aplikacja innego użytkownika. W przypadku rozpowszechnianych publicznie plików AIR zalecane jest stosowanie możliwego do sprawdzenia certyfikatu komercyjnego. Przegląd zagadnień związanych z zabezpieczeniami AIR zawiera sekcja Bezpieczeństwo w AIR (dla programistów ActionScript) oraz sekcja Bezpieczeństwo w AIR (dla programistów HTML).

Generowanie pary: certyfikat samopodpisany i klucz

Do wiersza poleceń wprowadź następujące polecenie (plik wykonywalny ADT można znaleźć w katalogu bin pakietu Flex SDK):
adt -certificate -cn SelfSigned 1024-RSA sampleCert.pfx samplePassword

W tym przykładzie wykorzystano minimalną liczbę atrybutów, jakie można ustawić dla certyfikatu. Typem klucza musi być 1024-RSA lub 2048-RSA (zobacz Podpisywanie aplikacji AIR ).

Tworzenie pakietu AIR

W wierszu polecenia wpisz następujące polecenie (w pojedynczym wierszu):
adt -package -storetype pkcs12 -keystore sampleCert.pfx HelloWorld.air 
HelloWorld-app.xml HelloWorld.swf

Zostanie wyświetlona zachęta do wprowadzenia hasła pliku kluczy. Wpisz hasło i naciśnij klawisz Enter. Ze względów bezpieczeństwa znaki hasła nie są wyświetlane.

Argument HelloWorld.air to plik AIR wygenerowany przez ADT. HelloWorld-app.xml to plik deskryptora aplikacji. Kolejne argumenty to pliki używane przez aplikację. W tym przykładzie wykorzystano tylko trzy pliki, ale można dołączyć dowolną liczbę plików i katalogów.

Po utworzeniu pakietu AIR można zainstalować i uruchomić aplikację poprzez dwukrotne kliknięcie pliku pakietu. Nazwę pliku AIR można również wpisać jako polecenie do powłoki lub okna poleceń.

Więcej informacji zawiera rozdział Pakowanie pliku instalacyjnego AIR na komputery stacjonarne .