Uruchamianie przykładów kodu ActionScript 3.0 na urządzeniach mobilnych

Uruchamianie przykładów kodu ActionScript 3.0 na urządzeniach mobilnych obsługujących program Flash Player 10.1 jest technicznie możliwe. Jednak z reguły przykłady kodu uruchamia się w celu poznania zasad działania określonych klas i metod. W takim przypadku lepiej jest uruchamiać przykłady na komputerze, a nie na urządzeniu mobilnym. Na komputerze możliwe jest używanie instrukcji trace oraz innych narzędzi do debugowania dostępnych w programach Flash Professional lub Flash Builder, co pozwala lepiej zrozumieć działanie przykładu.

Aby jednak uruchomić przykład na urządzeniu mobilnym, można skopiować pliki na urządzenie lub na serwer sieci Web. Aby skopiować pliki na urządzenie i uruchomić przykład w przeglądarce, wykonaj następujące czynności:

  1. Utwórz plik SWF zgodnie z instrukcjami podanymi w sekcjach Uruchamianie przykładów kodu ActionScript 3.0 w programie Flash Professional lub Uruchamianie przykładów kodu ActionScript 3.0 w programie Flash Builder. W programie Flash Professional plik SWF tworzony jest po wybraniu polecenia Sterowanie > Testuj film. W programie Flash Builder można utworzyć plik SWF podczas uruchamiania, debugowania lub budowania projektu Flash Builder.

  2. Skopiuj plik SWF do dowolnego katalogu na urządzeniu mobilnym. Do skopiowania pliku użyj oprogramowania dostarczonego z urządzeniem.

  3. Na pasku adresu w przeglądarce na urządzeniu mobilnym wprowadź adres URL pliku SWF poprzedzony specyfikatorem file://. Na przykład: file:://applications/myExample.swf.

Aby skopiować pliki na serwer sieci Web i uruchomić przykład w przeglądarce na urządzeniu, wykonaj następujące czynności:

  1. Utwórz plik SWF i plik HTML. Najpierw postępuj zgodnie z instrukcjami podanymi w sekcjach Uruchamianie przykładów kodu ActionScript 3.0 w programie Flash Professional lub Uruchamianie przykładów kodu ActionScript 3.0 w programie Flash Builder. W programie Flash Professional wybranie polecenia Sterowanie > Testuj film powoduje utworzenie jedynie pliku SWF. Aby utworzyć oba pliki, najpierw zaznacz opcje Flash i HTML na karcie Formaty w oknie dialogowym Ustawienia publikowania. Następnie wybierz polecenie Plik > Publikuj, aby utworzyć zarówno plik HTML, jak i SWF. W programie Flash Builder można utworzyć plik SWF i plik HTML podczas uruchamiania, debugowania lub budowania projektu Flash Builder.

  2. Skopiuj plik SWF i plik HTML do katalogu na serwerze sieci Web.

  3. Na pasku adresu przeglądarki na urządzeniu mobilnym wprowadź adres HTTP pliku HTML. Na przykład: http://www.myWebServer/examples/myExample.html.

Przed uruchomieniem przykładu na urządzeniu mobilnym należy wziąć pod uwagę wszystkie poniższe uwarunkowania.

Rozmiar stołu montażowego

Obszar stołu montażowego, na którym przykład uruchamiany jest na urządzeniu mobilnym, jest znacznie mniejszy niż na komputerze. W wielu przykładach nie jest wymagany określony rozmiar stołu montażowego. Tworząc plik SWF, należy określić rozmiar stołu montażowego właściwy dla urządzenia. Na przykład: 176 x 208 pikseli.

Przykłady praktyczne w publikacji ActionScript 3.0 — Podręcznik dla programistów zostały opracowane w celu zilustrowania różnych pojęć i klas w języku ActionScript 3.0. Interfejsy użytkownika tych przykładów zaprojektowano pod kątem optymalnego wyglądu i działania na komputerach stacjonarnych lub laptopach. Mimo że przykłady można uruchamiać na urządzeniach mobilnych, rozmiar stołu montażowego i konstrukcja interfejsu użytkownika nie są odpowiednie do wyświetlania na małym ekranie. Firma Adobe zaleca uruchamianie przykładów praktycznych na komputerze w procesie poznawania języka ActionScript, a następnie wykorzystanie odpowiednich urywków kodu we własnych aplikacjach dla urządzeń mobilnych.

Pola tekstowe zamiast instrukcji trace

Gdy przykład działa na urządzeniu mobilnym, nie jest możliwe obserwowanie wyników instrukcji trace. Aby wyświetlić takie wyniki, należy utworzyć instancję klasy TextField. Następnie tekst z instrukcji trace należy dołączyć do właściwości text pola tekstowego.

Można użyć następującej funkcji do skonfigurowania pola tekstowego na potrzeby śledzenia wyników:

function createTracingTextField(x:Number, y:Number, 
                                width:Number, height:Number):TextField { 
           
    var tracingTF:TextField = new TextField(); 
    tracingTF.x = x; 
    tracingTF.y = y; 
    tracingTF.width = width; 
    tracingTF.height = height; 
     
    // A border lets you more easily see the area the text field covers. 
    tracingTF.border = true; 
    // Left justifying means that the right side of the text field is automatically 
    // resized if a line of text is wider than the width of the text field. 
    // The bottom is also automatically resized if the number of lines of text 
    // exceed the length of the text field. 
    tracingTF.autoSize = TextFieldAutoSize.LEFT; 
     
    // Use a text size that works well on the device. 
    var myFormat:TextFormat = new TextFormat(); 
    myFormat.size = 18; 
    tracingTF.defaultTextFormat = myFormat; 
     
    addChild(tracingTF); 
    return tracingTF; 
}

Funkcję tę można dodać na przykład jako funkcję prywatną do klasy dokumentu. Następnie w innych metodach klasy dokumentu dane można wyświetlać za pomocą kodu podobnego do poniższego:

var traceField:TextField = createTracingTextField(10, 10, 150, 150); 
// Use the newline character "\n" to force the text to the next line. 
traceField.appendText("data to trace\n"); 
traceField.appendText("more data to trace\n"); 
// Use the following line to clear the text field. 
traceField.appendText("");

Metoda appendText() przyjmuje jako parametr tylko jedną wartość. Wartość ta jest ciągiem znaków (instancją obiektu String lub literalnym ciągiem znaków). Aby wyświetlić wartość zmiennej innego typu, należy najpierw przekonwertować tę wartość na typ String. Najprostszy sposób polega na wywołaniu metody toString() danego obiektu.

var albumYear:int = 1999; 
traceField.appendText("albumYear = "); 
traceField.appendText(albumYear.toString());

Rozmiar tekstu

W wielu przykładach omawiane pojęcia i techniki ilustrowane są przy użyciu pól tekstowych. Niekiedy zmiana rozmiaru tekstu w polu tekstowym zapewnia jego lepszą czytelność na urządzeniu mobilnym. Na przykład, jeśli w kodzie używana jest instancja pola tekstowego o nazwie myTextField, można zmienić rozmiar tekstu za pomocą następującego kodu:

// Use a text size that works well on the device. 
var myFormat:TextFormat = new TextFormat(); 
myFormat.size = 18; 
myTextField.defaultTextFormat = myFormat

Przechwytywanie czynności użytkownika

System operacyjny i przeglądarka na urządzeniu mobilnym przechwytują niektóre zdarzenia interakcji z użytkownikiem, które nie docierają do treści w pliku SWF. Konkretne zachowanie zależy od systemu operacyjnego i przeglądarki, należy jednak liczyć się z tym, że przykłady uruchomione na urządzeniu mobilnym będą działały w sposób różny od oczekiwanego. Więcej informacji zawiera sekcja Priorytet przetwarzania zdarzeń KeyboardEvent.

Ponadto interfejsy użytkownika w wielu przykładach zostały zaprojektowane z myślą o komputerze stacjonarnym lub laptopie. Dotyczy to większości przykładów praktycznych w publikacji ActionScript 3.0 — Podręcznik dla programistów. Dlatego na ekranie urządzenia mobilnego nie zawsze widoczny jest cały stół montażowy. To, czy w takiej sytuacji możliwe będzie panoramowanie obrazu, zależy od konkretnej przeglądarki. Ponadto w przykładach nie uwzględniono przechwytywania i obsługi zdarzeń przewijania i panoramowania. Dlatego interfejsy użytkownika niektórych przykładów nie nadają się do uruchamiania na małym ekranie. Firma Adobe zaleca uruchamianie przykładów na komputerze w procesie poznawania języka ActionScript, a następnie wykorzystanie odpowiednich urywków kodu we własnych aplikacjach dla urządzeń mobilnych.

Więcej informacji można znaleźć w sekcji Panoramowanie i przewijanie obiektów wyświetlanych.

Obsługa aktywności pól

W niektórych przykładach użytkownik musi uaktywnić określone pole. Uaktywnienie pola umożliwia na przykład wprowadzenie tekstu lub wybranie przycisku. Aby uaktywnić pole, należy skorzystać z urządzenia wskazującego w urządzeniu mobilnym, np. ekranu dotykowego i pióra/palca. Zamiast tego można użyć przycisków nawigacyjnych w urządzeniu mobilnym. Aby wybrać aktywny przycisk, należy użyć klawisza wyboru w urządzeniu mobilnym, tak jak klawisza Enter w komputerze. W przypadku niektórych urządzeń dwukrotne stuknięcie przycisku powoduje wybranie go.

Więcej informacji na temat aktywności zawiera sekcja Zarządzanie aktywnością.

Obsługa zdarzeń myszy

Wiele przykładów zawiera kod wykrywający zdarzenia myszy. Na komputerze zdarzenia te występują np. wtedy, gdy użytkownik naprowadzi wskaźnik na obiekt wyświetlany lub kliknie przyciskiem myszy, gdy wskaźnik znajduje się nad obiektem wyświetlanym. Na urządzeniach mobilnych zdarzenia z ekranu dotykowego obsługiwanego np. piórem lub palcem nazywane są zdarzeniami dotyku. Program Flash Player 10.1 odwzorowuje zdarzenia dotyku na zdarzenia myszy. Odwzorowanie to umożliwia prawidłowe działanie treści SWF opracowanej przed pojawieniem się wersji odtwarzacza Flash Player 10.1. A zatem przykłady będą działały niezależnie od tego, jakie urządzenie wskazujące jest używane do zaznaczania lub przeciągania obiektów wyświetlanych.

Wydajność

Urządzenia mobilne mają mniejszą moc obliczeniową niż urządzenia stacjonarne. Niektóre przykłady, które intensywnie korzystają z procesora, mogą działać wolno na urządzeniach mobilnych. Przykład z sekcji Przykład użycia rysunkowego interfejsu API: algorytmiczny generator efektów wizualnych przy wyświetlaniu każdej klatki intensywnie wykonuje obliczenia i operacje rysunkowe. Przykład ten, przeznaczony do uruchamiania na komputerze, ilustruje wykorzystanie niektórych elementów rysunkowego interfejsu API. Nie nadaje się on jednak do uruchamiania na niektórych urządzeniach mobilnych z uwagi na ich ograniczoną wydajność.

Więcej informacji na temat działania na urządzeniach przenośnych zawiera temat Optymalizacja wydajności na platformie Flash.

Najważniejsze wskazówki

W przykładach nie są uwzględnione najważniejsze wskazówki dotyczące tworzenia aplikacji dla urządzeń mobilnych. W praktyce konieczne jest wzięcie pod uwagę ograniczeń rozmiaru pamięci i mocy obliczeniowej występujących w urządzeniach mobilnych. Swoją specyfikę ma także interfejs użytkownika wyświetlany na małym ekranie. Więcej informacji na temat tworzenia aplikacji dla urządzeń przenośnych http://www.adobe.com/go/learn_optimizing_fp_pl.