Uwagi dotyczące projektowania aplikacji AIR dla urządzeń telewizyjnych

Uwagi dotyczące wideo

Wytyczne dotyczące kodowania wideo

W przypadku przesyłania strumieniowego wideo na urządzenie telewizyjne firma Adobe zaleca przestrzeganie następujących wytycznych w zakresie kodowania:

Kodek wideo:

H.264, profil Main (Główny) lub High (Wysoka jakość), kodowanie progresywne

Rozdzielczość:

720i, 720p, 1080i lub 1080p

Szybkość odtwarzania

24 klatki na sekundę lub 30 klatek na sekundę

Kodek audio:

AAC-LC lub AC-3 (44,1 kHz, stereo) albo następujące kodeki dźwięku wielokanałowego: E-AC-3, DTS, DTS Express, DTS-HD High Resolution Audio lub DTS-HD Master Audio

Łączna szybkość odtwarzania:

Do 8 Mb/s (w zależności od dostępnej przepustowości)

Szybkość odtwarzania audio:

Do 192 Kb/s

Proporcje pikseli:

1 × 1

Firma Adobe zaleca używanie kodeka H.264 dla materiałów wideo przeznaczonych na urządzenia telewizyjne ze środowiskiem AIR.

Uwaga: Środowisko AIR dla urządzeń telewizyjnych obsługuje również materiały wideo zakodowane za pomocą kodeków Sorenson Spark i On2 VP6. Sprzęt nie obsługuje jednak dekodowania ani renderowania tych kodeków. Zamiast tego środowisko wykonawcze stosuje dla tych kodeków dekodowanie i renderowanie programowe, więc materiały wideo są odtwarzane znacznie wolniej. Dlatego należy używać kodeka H.264, jeśli tylko jest to możliwe.

Klasa StageVideo

Środowisko AIR dla urządzeń telewizyjnych obsługuje renderowanie i dekodowanie sprzętowe zawartości wideo zakodowanej w formacie H.264. Do używania tej funkcji służy klasa StageVideo.

Sekcja Używanie klasy StageVideo do renderowania z przyspieszaniem sprzętowym w dokumencie ActionScript 3.0 — Podręcznik programistów zawiera szczegółowe informacje na następujące tematy:

  • Interfejs API klasy StageVideo i klas z nią związanych

  • Ograniczenia stosowania klasy StageVideo

Aby zapewnić najlepszą obsługę istniejącym aplikacjom AIR używającym obiektu Video w przypadku wideo zakodowanego w formacie H.264, środowisko AIR dla urządzeń telewizyjnych wewnętrznie korzysta z obiektu StageVideo. Oznacza to, że podczas odtwarzania wideo jest stosowanie renderowanie i dekodowanie sprzętowe. Obiekt Video podlega jednak tym samym ograniczeniom co obiekt StageVideo. Jeśli na przykład aplikacja próbuje obrócić obraz wideo, obraz nie jest obracany, ponieważ zawartość wideo jest renderowana sprzętowo, a nie przez środowisko wykonawcze.

Pisząc nowe aplikacje, w przypadku wideo zakodowanego w formacie H.264 należy jednak używać obiektu StageVideo.

Przykład stosowania klasy StageVideo można znaleźć w temacie Dostarczanie wideo i materiałów dla platformy Flash na urządzeniach telewizyjnych .

Wytyczne dotyczące dostarczania wideo

Na urządzeniu telewizyjnym ze środowiskiem AIR podczas odtwarzania wideo może zmieniać się dostępna przepustowość sieci. Zmiany mogą występować na przykład wtedy, gdy z tego samego połączenia internetowego zaczyna korzystać inny użytkownik.

Dlatego firma Adobe zaleca, aby system dostarczania wideo korzystał z funkcji adaptacyjnej szybkości odtwarzania. Po stronie serwera adaptacyjną szybkość odtwarzania obsługuje na przykład oprogramowanie Flash Media Server. Po stronie klienta można używać platformy OSMF (Open Source Media Framework).

Zawartość wideo można dostarczać przez sieć do aplikacji AIR dla urządzeń telewizyjnych za pośrednictwem następujących protokołów:
  • Dynamiczne przesyłanie strumieniowe HTTP i HTTPS (format F4F)

  • Przesyłanie strumieniowe RTMP, RTMPE, RTMFP, RTMPT i RTMPTE

  • Stopniowe pobieranie HTTP i HTTPS

Więcej informacji:

Uwagi dotyczące dźwięków

Kod ActionScript przeznaczony do odtwarzania dźwięku w aplikacjach AIR dla urządzeń telewizyjnych jest taki sam jak w innych aplikacjach AIR. Więcej informacji zawiera sekcja Praca z dźwiękiem w dokumencie ActionScript 3.0 — Podręcznik programistów .

W przypadku obsługi dźwięku wielokanałowego w środowisku AIR dla urządzeń telewizyjnych należy wziąć pod uwagę następujące kwestie:

  • Środowisko AIR dla urządzeń telewizyjnych obsługuje dźwięk wielokanałowy w materiałach wideo, które są stopniowo pobierane z serwera HTTP. Nie jest jeszcze dostępna obsługa dźwięku wielokanałowego w materiałach wideo przesyłanych strumieniowo z programu Adobe Flash Media Server.

  • Środowisko AIR dla urządzeń telewizyjnych obsługuje wiele kodeków audio, lecz nie wszystkie urządzenia telewizyjne ze środowiskiem AIR obsługują cały ten zestaw. Klasa flash.system.Capabilities zawiera metodę hasMultiChannelAudio() , za pomocą której należy sprawdzić, czy dane urządzenie telewizyjne ze środowiskiem AIR obsługuje określony kodek dźwięku wielokanałowego, taki jak AC-3.

    Załóżmy na przykład, że aplikacja stopniowo pobiera plik wideo z serwera. Na serwerze znajdują się różne pliki wideo H.264, które obsługują odmienne kodeki dźwięku wielokanałowego. Za pomocą metody hasMultiChannelAudio() aplikacja może ustalić, którego pliku wideo należy zażądać od serwera. Aplikacja może też wysłać do serwera ciąg znaków zawarty we właściwości Capabilities.serverString . Ten ciąg znaków wskazuje, które kodeki dźwięku wielokanałowego są dostępne, dzięki czemu serwer może wybrać odpowiedni plik wideo.

  • Podczas używania jednego z kodeków dźwięku DTS istnieje możliwość, że metoda hasMultiChannelAudio() zwróci wartość true , chociaż dźwięk w formacie DTS nie będzie odtwarzany.

    Za przykład może posłużyć odtwarzacz Blu-ray z wyjściem S/PDIF podłączony do starego wzmacniacza. Stary wzmacniacz może nie obsługiwać obsługuje formatu DTS, ale wyjście S/PDIF nie oferuje protokołu do powiadamiania o tym odtwarzacza Blu-ray. Jeżeli odtwarzacz Blu-ray będzie wysyłać strumień dźwięku DTS do starego wzmacniacza, użytkownik nic nie usłyszy. Dlatego w przypadku dźwięku DTS najlepiej jest zapewnić interfejs użytkownika, za pomocą którego użytkownik może wskazać, że dźwięk nie jest odtwarzany. Pozwoli to aplikacji zmienić kodek na inny.

Poniższa tabela zawiera podsumowanie określające, kiedy należy używać poszczególnych kodeków audio w aplikacjach AIR dla urządzeń telewizyjnych. W tabeli wskazano również, kiedy są używane akceleratory sprzętowe podczas dekodowania za pomocą kodeka audio na urządzeniach telewizyjnych ze środowiskiem AIR. Dekodowanie sprzętowe zwiększa wydajność i odciąża procesor.

Kodek audio

Dostępność na urządzeniu telewizyjnym ze środowiskiem AIR

Dekodowanie sprzętowe

Kiedy używać tego kodeku audio

Więcej informacji

AAC

Zawsze

Zawsze

W plikach wideo zakodowanych w formacie H.264.

W przypadku przesyłania strumieniowego dźwięków, na przykład w internetowej usłudze przesyłania strumieniowego muzyki.

Podczas przesyłania strumieniowego wyłącznie dźwięków w formacie AAC dźwięki przesyłane strumieniowo należy umieścić w kontenerze MP4.

mp3

Zawsze

Nie

Dla dźwięków w plikach SWF aplikacji.

W materiałach wideo zakodowanych za pomocą kodeka Sorenson Spark lub On2 VP6.

Materiały wideo H.264 z dźwiękiem mp3 nie są odtwarzane na urządzeniach telewizyjnych ze środowiskiem AIR.

AC-3 (Dolby Digital)

E-AC-3 (Enhanced Dolby Digital)

DTS Digital Surround

DTS Express

DTS-HD High Resolution Audio

DTS-HD Master Audio

Sprawdź

Tak

W plikach wideo zakodowanych w formacie H.264.

Zazwyczaj środowisko AIR dla urządzeń telewizyjnych przekazuje strumień dźwięku wielokanałowego do zewnętrznego odbiornika audio/wideo, który dekoduje i odtwarza dźwięk.

Speex

Zawsze

Nie

Odbieranie strumienia głosowego na żywo.

Materiały wideo H.264 korzystające z kodeka dźwięku Speex nie są odtwarzane na urządzeniach telewizyjnych ze środowiskiem AIR. Kodeka Speex należy używać tylko w materiałach wideo zakodowanych przy użyciu kodeka Sorenson Spark lub On2 VP6.

NellyMoser

Zawsze

Nie

Odbieranie strumienia głosowego na żywo.

Materiały wideo H.264 korzystające z kodeka dźwięku NellyMoser nie są odtwarzane na urządzeniach telewizyjnych ze środowiskiem AIR. Kodeka NellyMoser należy używać tylko w materiałach wideo zakodowanych przy użyciu kodeka Sorenson Spark lub On2 VP6.

Uwaga: Niektóre pliki wideo zawierają dwa strumienie audio. Na przykład plik wideo może zawierać zarówno strumień AAC, jak i strumień AC3. Środowisko AIR dla urządzeń telewizyjnych nie obsługuje takich plików wideo. Użycie takiego pliku może spowodować brak dźwięku związanego z wideo.

Sprzętowe przyspieszanie grafiki

Używanie sprzętowego przyspieszania grafiki

Urządzenia telewizyjne ze środowiskiem AIR zapewniają przyspieszanie sprzętowe dla operacji na grafice 2D. Sprzętowe akceleratory graficzne urządzenia odciążają procesor w zakresie wykonywania następujących działań:

  • Renderowanie bitmap

  • Skalowanie bitmap

  • Mieszanie bitmap

  • Wypełnianie pełnych prostokątów

Takie sprzętowe przyspieszanie grafiki oznacza, że wiele operacji graficznych w aplikacji AIR dla urządzeń telewizyjnych można realizować z wysoką wydajnością. Przykładami tych operacji mogą być:

  • Przejścia z przesuwaniem

  • Przejścia ze skalowaniem

  • Pojawianie się i znikanie obiektów

  • Składanie wielu obrazów przy użyciu kanału alfa

Aby w operacjach tego typu uzyskać korzyści wynikające z używania sprzętowego przyspieszania grafiki, należy zastosować jedną z następujących technik:

  • Dla właściwości cacheAsBitmap w obiektach MovieClip i w innych obiektach ekranowych o głównie niezmiennej zawartości ustaw wartość true . Następnie wykonaj względem tych obiektów przejścia przesuwane, przejścia skalowane i mieszanie alfa.

  • Względem obiektów ekranowych, które mają zostać poddane skalowaniu lub translacji (zmianom współrzędnych x i y), użyj właściwości cacheAsBitmapMatrix .

    Zastosowanie operacji klasy Matrix do skalowania i translacji sprawia, że te operacje są wykonywane przez akceleratory sprzętowe urządzenia. Załóżmy na przykład, że są zmieniane wymiary obiektu ekranowego, dla którego właściwości cacheAsBitmap ustawiono wartość true . Gdy te wymiary są zmieniane, oprogramowanie środowiska wykonawczego ponownie rysuje bitmapę. Ponowne rysowanie za pomocą oprogramowania oferuje niższą wydajność niż skalowanie za pomocą przyspieszania sprzętowego przy użyciu operacji Matrix.

    Załóżmy, że pewna aplikacja wyświetla obraz, który jest powiększany po wybraniu przez użytkownika końcowego. Wielokrotne użycie operacji skalowania Matrix stwarza wrażenie powiększania obrazu. Jakość obrazu końcowego może jednak być nie do przyjęcia, w zależności od rozmiaru oryginalnego obrazu i obrazu końcowego. Z tego powodu po zakończeniu operacji powiększania należy wyzerować wymiary obiektu ekranowego. Wartość właściwości cacheAsBitmap wynosi true , więc środowisko wykonawcze ponownie rysuje obiekt ekranowy, ale tylko raz, po czym jest renderowany obraz o wysokiej jakości.

    Uwaga: Zazwyczaj urządzenia telewizyjne ze środowiskiem AIR nie obsługują obracania ani pochylania przyspieszanego sprzętowo. Z tego powodu w przypadku określenia w klasie Matrix obracania i pochylania środowisko AIR dla urządzeń telewizyjnych wykonuje wszystkie operacje Matrix w oprogramowaniu. Te operacje programowe mogą obniżać wydajność.
  • W celu zrealizowania własnego mechanizmu buforowania bitmapy należy użyć klasy BitmapData.

Więcej informacji o buforowaniu bitmap zawierają następujące strony:

Zarządzanie pamięcią graficzną

W celu wykonywania przyspieszanych operacji graficznych akceleratory sprzętowe korzystają ze specjalnej pamięci graficznej. Aplikacja używająca całej pamięci graficznej działa wolniej, gdyż środowisko AIR dla urządzeń telewizyjnych powraca do używania oprogramowania podczas operacji graficznych.

Aby zarządzać używaniem pamięci graficznej przez aplikację:

  • Po zakończeniu używania obrazu lub innych danych bitmapowych należy zwolnić odpowiednią pamięć graficzną. Aby to zrobić, należy wywołać metodę dispose() właściwości bitmapData obiektu Bitmap. Na przykład:

    myBitmap.bitmapData.dispose();
    Uwaga: Zwolnienie odniesienia do obiektu BitmapData nie powoduje natychmiastowego zwolnienia pamięci graficznej. Proces czyszczenia pamięci środowiska wykonawczego spowoduje w końcu zwolnienie pamięci graficznej, ale wywołanie metody dispose() pozwala na dokładne sterowanie sytuacją przez aplikację.
  • Oferowana przez firmę Adobe aplikacja AIR — PerfMaster Deluxe — pozwala lepiej zrozumieć mechanizm przyspieszania sprzętowego na urządzeniu docelowym. Ta aplikacja pokazuje liczbę klatek na sekundę podczas wykonywania różnych operacji. Korzystając z aplikacji PerfMaster Deluxe, można porównywać różne sposoby implementacji tej samej operacji. Można na przykład porównać przesuwanie obrazu bitmapowego z przesuwaniem obrazu wektorowego. Aplikacja PerfMaster Deluxe jest dostępna na stronie Platforma Flash dla urządzeń telewizyjnych .

Zarządzanie listą wyświetlania

Aby uczynić obiekt ekranowy niewidzialnym, należy ustawić dla jego właściwości visible wartość false . Obiekt pozostanie na liście wyświetlania, ale nie będzie renderowany ani wyświetlany przez środowisko AIR dla urządzeń telewizyjnych. Ta technika jest przydatna w przypadku obiektów często pojawiających się i znikających, gdyż wymaga niewielu dodatkowych obliczeń. Ustawienie dla właściwości visible wartości false nie zwalnia jednak żadnych zasobów obiektu. Dlatego jeśli obiekt ekranowy nie jest już używany — lub nie będzie używany przez dłuższy czas — należy usunąć go z listy wyświetlenia. Należy też ustawić wartość null dla wszystkich odniesień do tego obiektu. Pozwoli to procesowi czyszczenia pamięci zwolnić zasoby obiektu.

Używanie obrazów PNG i JPEG

Dwoma typowymi formatami obrazów w aplikacjach są PNG i JPEG. Rozważając używanie tych formatów w środowisku AIR dla urządzeń telewizyjnych, należy wziąć pod uwagę następujące czynniki:

  • Środowisko AIR dla urządzeń telewizyjnych używa zazwyczaj przyspieszania sprzętowego w celu dekodowania plików JPEG.

  • Środowisko AIR dla urządzeń telewizyjnych zazwyczaj dekoduje pliki PNG programowo. Dekodowanie plików PNG w oprogramowaniu przebiega szybko.

  • Format PNG jest jedynym formatem bitmapowym współpracującym z wieloma platformami, który obsługuje przezroczystość (kanał alfa).

Z tego powodu w aplikacjach należy używać tych formatów obrazów w następujący sposób:

  • Aby w przypadku zdjęć mogło być używane dekodowanie przyspieszane sprzętowo, należy używać plików JPEG.

  • Plików PNG należy używać w elementach interfejsu użytkownika. Elementy interfejsu użytkownika mogą mieć ustawienie wartości alfa, a dekodowanie programowe zapewnia wystarczająco wysoką wydajność dla elementów interfejsu użytkownika.

Stół montażowy w aplikacjach AIR dla urządzeń telewizyjnych

Podczas tworzenia aplikacji AIR dla urządzeń telewizyjnych należy wziąć pod uwagę następujące aspekty związane z pracą klasą Stage:

  • Rozdzielczość ekranu

  • Bezpieczny obszar wyświetlania

  • Tryb skalowania stołu montażowego

  • Wyrównanie stołu montażowego

  • Stan wyświetlania stołu montażowego

  • Projektowanie na potrzeby wielu rozmiarów ekranu

  • Ustawienia jakości stołu montażowego

Rozdzielczość ekranu

Obecnie urządzenia telewizyjne mają jedną z następujących rozdzielczości ekranu: 540p, 720p i 1080p. Te rozdzielczości ekranu dają zazwyczaj następujące wartości klasy Capabilities języka ActionScript:

Rozdzielczość ekranu

Capabilities.screenResolutionX

Capabilities.screenResolutionY

540p

960

540

720p

1280

720

1080p

1920

1080

Tworząc pełnoekranową aplikację AIR dla urządzeń telewizyjnych przeznaczoną na konkretne urządzenie, należy na stałe nadać właściwościom Stage.stageWidth i Stage.stageHeight wartości rozdzielczości ekranu urządzenia. Tworząc aplikację pełnoekranową działającą na wielu urządzeniach, do ustawiania wymiarów stołu montażowego należy używać właściwości Capabilities.screenResolutionX i Capabilities.screenResolutionY .

Na przykład:

stage.stageWidth = Capabilities.screenResolutionX; 
stage.stageHeight = Capabilities.screenResolutionY;

Bezpieczny obszar wyświetlania

Bezpieczny obszar wyświetlania na telewizorze jest obszarem ekranu odsuniętym od krawędzi ekranu. Ten obszar jest wystarczająco odsunięty, aby użytkownik końcowy widział go w całości (bez zasłaniania fragmentów przez maskownicę telewizora). Maskownica, która jest fizyczną ramką dookoła ekranu, różni się w zależności od producenta, więc stosowane odsunięcie też musi się zmieniać. Bezpieczny obszar wyświetlania to próba zagwarantowania, że obszar ekranu będzie widoczny. Bezpieczny obszar wyświetlania jest również określany jako bezpieczny obszar tytułowy .

Nadmiarowość ekranu jest obszarem ekranu, który nie jest widoczny, ponieważ znajduje się poza maskownicą.

Firma Adobe zaleca stosowanie wstawki o wartości 7,5% dla każdej krawędzi ekranu. Na przykład:

Powiększ obraz
Bezpieczny obszar wyświetlania w przypadku rozdzielczości ekranu wynoszącej 1920x1080

Tworząc pełnoekranową aplikację AIR dla urządzeń telewizyjnych należy zawsze pamiętać o stosowaniu bezpiecznego obszaru wyświetlania.

  • Pracując z tłem, na przykład ustawiając obraz lub kolor tła, należy używać całego ekranu.

  • Bezpiecznego obszaru wyświetlania należy używać wyłącznie w krytycznych elementach aplikacji, takich jak tekst, grafika, wideo i elementy interfejsu użytkownika (na przykład przyciski).

W poniższej tabeli przedstawiono wymiary bezpiecznego obszaru wyświetlania dla typowych rozdzielczości ekranu ze wstawkami o wartości 7,5%.

Rozdzielczość ekranu

Szerokość i wysokość bezpiecznego obszaru wyświetlania

Szerokość lewej i prawej wstawki

Wysokość lewej i prawej wstawki

960x540

816x460

72

40

1280x720

1088x612

96

54

1920x1080

1632x918

144

81

Najlepszą praktyką jest jednak zawsze dynamiczne obliczanie bezpiecznego obszaru wyświetlania. Na przykład:

var horizontalInset, verticalInset, safeAreaWidth, safeAreaHeight:int; 
 
horizontalInset = .075 * Capabilities.screenResolutionX; 
verticalInset = .075 * Capabilities.screenResolutionY; 
safeAreaWidth = Capabilities.screenResolutionX - (2 * horizontalInset); 
safeAreaHeight = Capabilities.screenResolutionY - (2 * verticalInset);

Tryb skalowania stołu montażowego

Ustaw dla właściwości Stage.scaleMode wartość StageScaleMode.NO_SCALE i wykrywaj zdarzenia zmiany rozmiaru stołu montażowego.

stage.scaleMode = StageScaleMode.NO_SCALE; 
stage.addEventListener(Event.RESIZE, layoutHandler);

To ustawienie powoduje, że współrzędne stołu montażowego są takie same jak współrzędne w pikselach. Wraz ze stanem wyświetlania FULL_SCREEN_INTERACTIVE i wyrównaniem stołu montażowego TOP_LEFT to ustawienie pozwala skutecznie korzystać z bezpiecznego obszaru wyświetlania.

W aplikacjach pełnoekranowych ten tryb oznacza, że właściwości stageWidth i stageHeight klasy Stage odpowiadają właściwościom screenResolutionX i screenResolutionY klasy Capabilities.

Ponadto gdy zmienia się rozmiar okna aplikacji, zawartość stołu montażowego utrzymuje zdefiniowany rozmiar. Środowisko wykonawcze nie wykonuje automatycznego skalowania ani wyrównywania układu. Gdy zmienia się rozmiar okna, środowisko wykonawcze wywołuje zdarzenie resize klasy Stage. Oznacza to, że aplikacja w pełni kontroluje sposób dostosowywania zawartości w momencie uruchamiania i zmiany rozmiaru okna.

Uwaga: Ustawienie wartości NO_SCALE powoduje takie zachowanie analogiczne do innych aplikacji AIR. W aplikacjach AIR dla urządzeń telewizyjnych stosowanie tego ustawienia ma jednak kluczowe znaczenie podczas używania bezpiecznego obszaru wyświetlania.

Wyrównanie stołu montażowego

Ustaw dla właściwości Stage.align wartość StageAlign.TOP_LEFT :

stage.align = StageAlign.TOP_LEFT; 

Takie wyrównanie powoduje umieszczenie współrzędnych 0,0 w lewym górnym rogu ekranu, co jest wygodne w przypadku umieszczania zawartości przy użyciu języka ActionScript.

Wraz z trybem skalowania NO_SCALE i stanem wyświetlania FULL_SCREEN_INTERACTIVE to ustawienie pozwala skutecznie używać bezpiecznego obszaru wyświetlania.

Stan wyświetlania stołu montażowego

W pełnoekranowej aplikacji AIR dla urządzeń telewizyjnych ustaw dla właściwości Stage.displayState wartość StageDisplayState.FULL_SCREEN_INTERACTIVE :

stage.displayState = StageDisplayState.FULL_SCREEN_INTERACTIVE; 

Ta wartość powoduje rozszerzenie stołu montażowego aplikacji AIR na cały ekran, gdy jest dozwolone wprowadzanie danych przez użytkownika.

Firma Adobe zaleca stosowanie ustawienia FULL_SCREEN_INTERACTIVE . Wraz z trybem skalowania NO_SCALE i wyrównaniem stołu montażowego TOP_LEFT to ustawienie pozwala skutecznie używać bezpiecznego obszaru wyświetlania.

Z tego powodu w aplikacjach pełnoekranowych w module obsługi zdarzenia ADDED_TO_STAGE w głównej klasie dokumentu należy używać następującego kodu:

private function onStage(evt:Event):void 
{ 
    stage.scaleMode = StageScaleMode.NO_SCALE; 
    stage.align = StageAlign.TOP_LEFT; 
    stage.addEventListener(Event.RESIZE, onResize); 
    stage.displayState = StageDisplayState.FULL_SCREEN_INTERACTIVE; 
}

Następnie w module obsługi zdarzenia RESIZE :

  • Porównaj wymiary rozdzielczości ekranu z szerokością i wysokością stołu montażowego. Jeśli są one takie same, nastąpiło zdarzenie RESIZE , gdyż wartość stanu wyświetlania stołu montażowego zmieniła się na FULL_SCREEN_INTERACTIVE .

  • Oblicz i zapisz wymiary bezpiecznego obszaru wyświetlania i odpowiednich wstawek.

private function onResize(evt:Event):void 
{ 
    if ((Capabilities.screenResolutionX == stage.stageWidth) && 
        (Capabilities.screenResolutionY == stage.stageHeight)) 
    { 
         
        // Calculate and save safe viewing area dimensions. 
    } 
}

Gdy wymiary stołu montażowego odpowiadają wartościom Capabilities.screenResolutionX i screenResolutionY , środowisko AIR dla urządzeń telewizyjnych używa dostępnego sprzętu w celu uzyskania możliwie najwyższej jakości wideo i grafiki.

Uwaga: Jakość wyświetlania grafiki i wideo na ekranie telewizora zależy od wartości Capabilities.screenResolutionX i screenResolutionY , a te wartości są zależne od urządzenia, na którym działa środowisko AIR dla urządzeń telewizyjnych. Dekoder, na którym działa środowisko AIR dla urządzeń telewizyjnych, może na przykład mieć ekran o rozdzielczości 1280 x 720, podczas gdy podłączony do niego telewizor może mieć rozdzielczość ekranu 1920 x 1080. Środowisko AIR dla urządzeń telewizyjnych powoduje, że sprzęt wyświetla obraz o najwyższej dostępnej jakości. W tym przykładzie sprzęt wyświetla wideo w rozdzielczości 1080p, korzystając z rozdzielczości ekranu 1920 x 1080.

Projektowanie na potrzeby wielu rozmiarów ekranu

Aplikację AIR dla urządzeń telewizyjnych można opracować w taki sposób, aby działała i wyglądała dobrze na wielu urządzeniach telewizyjnych ze środowiskiem AIR. W tym celu należy wykonać następujące czynności:

  1. Ustaw dla właściwości scaleMode , align i displayState stołu montażowego następujące wartości zalecane: odpowiednio StageScaleMode.NO_SCALE , StageAlign.TOP_LEFT i StageDisplayState.FULL_SCREEN_INTERACTIVE .

  2. Ustaw obszar bezpiecznego wyświetlania na podstawie właściwości Capabilities.screenResolutionX i Capabilities.screenResolutionY .

  3. Dostosuj rozmiar i układ zawartości na podstawie szerokości i wysokości bezpiecznego obszaru wyświetlania.

    Obiekty zawartości są duże, szczególnie w porównaniu z aplikacjami dla urządzeń przenośnych, ale koncepcje takie jak układ dynamiczny, pozycjonowanie względne i zawartość adaptacyjna są takie same. Więcej informacji dotyczących kodu ActionScript przeznaczonego do obsługi tych koncepcji zawiera temat Tworzenie materiałów Flash dla urządzeń przenośnych przeznaczonych na ekrany o różnych rozmiarach .

Jakość stołu montażowego

Właściwość Stage.quality w aplikacji AIR dla urządzeń telewizyjnych ma zawsze wartość StageQuality.High . Nie można jej zmienić.

Ta właściwość określa jakość renderowania dla wszystkich obiektów Stage.

Obsługa sygnału pilota zdalnego sterowania

Użytkownicy korzystają zazwyczaj z aplikacji AIR dla urządzeń telewizyjnych za pomocą pilota zdalnego sterowania. Jednak dane wprowadzane za pomocą klawiszy należy obsługiwać w taki sam sposób, jak w aplikacji na komputerze stacjonarnym są obsługiwane dane wprowadzane za pomocą klawiatury. Należy obsługiwać zdarzenie KeyboardEvent.KEY_DOWN . Więcej informacji można znaleźć w temacie Przechwytywanie naciśnięć klawiszy w dokumencie ActionScript 3.0 — Podręcznik programistów .

Klawisze na pilocie zdalnego sterowania są odwzorowywane na stałe ActionScript. Na przykład klawisze na klawiaturze kierunkowej znajdującej się na pilocie zdalnego sterowania są odwzorowywane w następujący sposób:

Klawisz klawiatury kierunkowej pilota zdalnego sterowania

Stała ActionScript 3.0

W górę

Keyboard.UP

W dół

Keyboard.DOWN

W lewo

Keyboard.LEFT

W prawo

Keyboard.RIGHT

Potwierdzenie lub wybór

Keyboard.ENTER

W środowisku AIR 2.5 dodano wiele innych stałych Keyboard przeznaczonych do obsługi sygnałów pilota zdalnego sterowania. Pełną listę można znaleźć w temacie Klasa Keyboard w Dokumentacji języka ActionScript 3.0 dla platformy Adobe Flash .

W celu zapewnienia działania aplikacji na jak największej liczbie urządzeń firma Adobe zaleca przestrzeganie następujących wytycznych:

  • Należy używać wyłącznie klawiszy klawiatury kierunkowej, jeśli jest to możliwe.

    Różne piloty zdalnego sterowania oferują różne zestawy klawiszy. Jednak zazwyczaj zawsze mają one klawisze klawiatury kierunkowej.

    Na przykład pilot zdalnego sterowania odtwarzacza Blu-ray nie ma zazwyczaj klawiszy służących do zmiany kanału na kolejny lub poprzedni. Nawet klawisze odtwarzania, wstrzymywania i zatrzymywania nie występują na wszystkich pilotach zdalnego sterowania.

  • Jeśli aplikacja wymaga używania innych klawiszy niż klawisze klawiatury kierunkowej, należy stosować klawisze Menu i Info.

    Klawisze Menu i Info są następnymi najczęstszymi klawiszami występującymi na pilotach zdalnego sterowania.

  • Należy wziąć pod uwagę częste używanie uniwersalnych pilotów zdalnego sterowania.

    Nawet tworząc aplikację przeznaczoną na konkretne urządzenie, należy pamiętać o tym, że wielu użytkowników nie korzysta z pilota zdalnego sterowania dołączonego do urządzenia. Zamiast tego używają oni uniwersalnego pilota zdalnego sterowania. Użytkownicy nie zawsze programują również uniwersalne piloty zdalnego sterowania w taki sposób, aby dopasować klawisze do wszystkich klawiszy na pilocie zdalnego sterowania. Z tego powodu zalecane jest używanie tylko najbardziej typowych klawiszy.

  • Należy upewnić się, że użytkownik może zawsze wyjść z danej sytuacji za pomocą jednego klawisza z klawiatury kierunkowej.

    Czasami istnieje ważne uzasadnienie, aby aplikacja korzystała z klawisza, który nie jest jednym z najbardziej typowych klawiszy na pilotach zdalnego sterowania. Dzięki zastosowaniu możliwości wyjścia za pomocą jednego klawisza klawiatury kierunkowej obsługa aplikacji będzie możliwa na wszystkich urządzeniach.

  • Nie należy wymagać wprowadzania danych za pomocą wskaźnika, chyba że docelowe urządzenie telewizyjne ze środowiskiem AIR oferuje taką możliwość.

    Wiele aplikacji dla komputerów oczekuje wprowadzania danych za pomocą myszy, jednak większość telewizorów nie obsługuje wprowadzania danych za pomocą wskaźnika. W przypadku konwertowania aplikacji dla komputerów na aplikacje działające na telewizorach należy pamiętać o zmodyfikowaniu aplikacji w taki sposób, aby nie było oczekiwane wprowadzanie danych za pomocą myszy. Te modyfikacje obejmują zmiany obsługi zdarzeń i zmiany instrukcji przekazywanych użytkownikowi. Na przykład na ekranie startowym aplikacji nie należy wyświetlać komunikatu „Kliknij, aby rozpocząć”.

Zarządzanie aktywnością

Gdy element interfejsu użytkownika jest aktywny w aplikacji na komputery stacjonarne, jest on elementem docelowym zdarzeń wprowadzania danych przez użytkownika, takich jak zdarzenia klawiatury i myszy. Ponadto gdy element interfejsu użytkownika jest aktywny, zostaje on podświetlony przez aplikację. Zarządzanie aktywnością w aplikacji AIR dla urządzeń telewizyjnych różni się od zarządzania aktywnością w aplikacji na komputery stacjonarne, ponieważ:

  • W aplikacjach na komputery stacjonarne do przenoszenia punktu skupienia do następnego elementu interfejsu użytkownika jest często używany klawisz Tab. Klawisz Tab nie jest używany w aplikacjach AIR dla urządzeń telewizyjnych. Piloty zdalnego sterowania nie mają zazwyczaj klawisza Tab. Z tego powodu zarządzanie aktywnością za pomocą właściwości tabEnabled obiektu DisplayObject, jak ma to miejsce w aplikacjach komputerowych, nie działa.

  • Aplikacje dla komputerów stacjonarnych często oczekują, że użytkownik uaktywni element interfejsu użytkownika za pomocą myszy.

Dlatego w aplikacji należy wykonać następujące czynności:

  • Dodaj do obiektu Stage detektor zdarzeń wykrywający zdarzenia Keyboard, takie jak KeyboardEvent.KEY_DOWN .

  • Zadbaj o logikę aplikacji określającą, który element interfejsu użytkownika ma zostać wyróżniony dla użytkownika końcowego. Upewnij się, że podczas uruchamiania aplikacji zostaje wyróżniony element interfejsu użytkownika.

  • Na podstawie logiki aplikacji powinno zostać wywołane zdarzenie Keyboard odebrane przez obiekt Stage względem odpowiedniego obiektu elementu interfejsu użytkownika.

    Element interfejsu użytkownika można również uaktywniać za pomocą właściwości Stage.focus lub Stage.assignFocus() . Następnie można dodać do tego obiektu DisplayObject detektor zdarzeń w celu wykrywania zdarzeń klawiatury.

Projektowanie interfejsu użytkownika

Aby interfejs użytkownika aplikacji AIR dla urządzeń telewizyjnych działał poprawnie na telewizorach, należy przestrzegać poniższych zaleceń dotyczących:

  • szybkości reakcji aplikacji,

  • użyteczności aplikacji,

  • dostosowania do oczekiwań i osobowości użytkownika.

Szybkość reakcji

Przestrzeganie poniższych wskazówek sprawi, że aplikacja AIR dla urządzeń telewizyjnych będzie działać tak szybko, jak to możliwe.

  • Początkowy plik SWF aplikacji powinien być jak najmniejszy.

    W początkowym pliku SWF należy wczytywać wyłącznie zasoby niezbędne do uruchomienia aplikacji. Na przykład należy wczytywać wyłącznie obraz ekranu startowego aplikacji.

    Chociaż to zalecenie dotyczy również komputerowych aplikacji AIR, ma ono większe znaczenie na urządzeniach telewizyjnych ze środowiskiem AIR. Urządzenia telewizyjne ze środowiskiem AIR nie mają na przykład mocy obliczeniowej porównywalnej z komputerami stacjonarnymi. Ponadto aplikacja jest w nich przechowywana w pamięci flash, która nie jest tak szybka jak dyski twarde w komputerach stacjonarnych.

  • Aplikacja powinna działać z szybkością co najmniej 20 klatek na sekundę.

    Grafikę należy opracować, uwzględniając ten cel. Złożoność operacji graficznych może wpływać na liczbę klatek na sekundę. Wskazówki dotyczące zwiększania wydajności renderowania zawiera temat Optymalizacja wydajności na platformie Adobe Flash .

    Uwaga: Sprzęt graficzny w urządzeniach telewizyjnych ze środowiskiem AIR zazwyczaj aktualizuje zawartość ekranu z szybkością 60 Hz lub 120 Hz (60 lub 120 razy na sekundę). Sprzęt skanuje stół montażowy pod kątem aktualizacji co 30 lub 60 klatek na sekundę w przypadku wyświetlania obrazu na ekranie o częstotliwości 60 Hz lub 120 Hz. Jednak to, czy użytkownik skorzysta z tej wyższej szybkości odtwarzania, zależy od stopnia złożoności operacji graficznych aplikacji.
  • Zawartość ekranu należy aktualizować w ciągu 100–200 milisekund od wprowadzenia danych przez użytkownika.

    Jeśli aktualizowanie trwa dłużej, użytkownicy często się niecierpliwią, co prowadzi do wielokrotnego naciskania klawiszy.

Użyteczność

Użytkownicy środowiska AIR dla urządzeń telewizyjnych znajdują się w „otoczeniu domowym”. Siedzą oni po drugiej stronie pokoju względem telewizora, w odległości około 3 metrów. Pomieszczenie jest czasami ciemne. Zazwyczaj do wprowadzania danych służy pilot zdalnego sterowania. Z aplikacji może korzystać więcej niż jedna osoba, czasami razem, czasami po kolei.

Z tego powodu w celu opracowania interfejsu użytkownika pod kątem używania na telewizorze należy postępować zgodnie z następującymi zaleceniami:

  • Elementy interfejsu użytkownika należy uczynić dużymi.

    Projektując tekst, przyciski lub inne elementy interfejsu użytkownika, należy pamiętać, że użytkownik siedzi po drugiej stronie pomieszczenia. Wszystko powinno być łatwe do zauważenia i odczytania z odległości na przykład 3 m. Nie należy zapełniać ekranu tylko dlatego, że jest on duży.

  • Należy używać dobrego kontrastu, tak aby zawartość była łatwa do zauważenia i odczytania z drugiej strony pomieszczenia.

  • Należy wyraźnie wskazać, który element interfejsu jest aktywny, oznaczając go jasnym kolorem.

  • Ruch należy stosować wyłącznie w razie potrzeby. Na przykład przesuwanie z jednego ekranu na drugi w celu zachowania ciągłości może działać dobrze. Jednak ruch może być rozpraszający, jeśli nie pomaga to użytkownikowi w nawigowaniu lub jeśli nie jest niezbywalną cechą aplikacji.

  • Należy zawsze zapewniać oczywisty sposób, za pomocą którego użytkownik może cofać się w interfejsie użytkownika.

Więcej informacji na temat używania pilota zdalnego sterowania zawiera sekcja Obsługa sygnału pilota zdalnego sterowania .

Oczekiwania i osobowość użytkownika

Należy pamiętać, że użytkownicy aplikacji AIR dla urządzeń telewizyjnych poszukują zazwyczaj rozrywki o telewizyjnej jakości w przyjemnym i zrelaksowanym otoczeniu. Niekoniecznie mają oni dużą wiedzę na temat komputerów i techniki.

Dlatego projektując aplikacje AIR dla urządzeń telewizyjnych, należy pamiętać o następujących aspektach:

  • Nie należy używać terminów technicznych.

  • Należy unikać modalnych okien dialogowych

  • Należy używać przyjaznych, nieformalnych instrukcji odpowiednich dla środowiska domowego, a nie środowiska zawodowego czy technicznego.

  • Należy używać grafiki charakteryzującej się wysoką jakością produkcji oczekiwaną przez widzów.

  • Należy opracować interfejs użytkownika umożliwiający łatwą współpracę z pilotem zdalnego sterowania. Nie należy stosować elementów interfejsu użytkownika ani elementów projektu, które są lepiej dostosowane do aplikacji dla komputerów lub urządzeń przenośnych. Na przykład interfejs użytkownika na komputerach i urządzeniach przenośnych często wymaga wskazywania i klikania przycisków za pomocą myszy lub palca.

Czcionki i tekst

W aplikacji AIR dla urządzeń telewizyjnych można używać czcionek urządzenia lub czcionek osadzonych.

Czcionki urządzenia to czcionki zainstalowane na urządzeniu. Na wszystkich urządzeniach telewizyjnych ze środowiskiem AIR występują następujące czcionki:

Nazwa czcionki

Opis

_sans

Czcionka urządzenia _sans charakteryzuje się krojem pisma sans-serif. Czcionką urządzenia _sans zainstalowaną na wszystkich urządzeniach telewizyjnych ze środowiskiem AIR jest czcionka Myriad Pro. Na telewizorze krój pisma sans serif wygląda zazwyczaj lepiej niż kroje pisma serif ze względu na odległość oglądania.

_serif

Czcionka urządzenia _serif charakteryzuje się krojem pisma serif. Czcionką urządzenia _serif zainstalowaną na wszystkich urządzeniach telewizyjnych ze środowiskiem AIR jest czcionka Minion Pro.

_typewriter

Czcionka urządzenia _typewriter jest czcionką nieproporcjonalną. Czcionką urządzenia _typewriter zainstalowaną na wszystkich urządzeniach telewizyjnych ze środowiskiem AIR jest czcionka Courier Std.

Na wszystkich urządzeniach telewizyjnych ze środowiskiem AIR występują również następujące czcionki azjatyckie:

Nazwa czcionki

Język

Kategoria kroju pisma

Kod regionalny

RyoGothicPlusN-Regular

japoński

sans

ja

RyoTextPlusN-Regular

japoński

serif

ja

AdobeGothicStd-Light

koreański

sans

ko

AdobeHeitiStd-Regular

chiński uproszczony

sans

zh_CN

AdobeSongStd-Light

chiński uproszczony

serif

zh_CN

AdobeMingStd-Light

chiński tradycyjny

serif

zh_TW i zh_HK

Te czcionki urządzeń telewizyjnych ze środowiskiem AIR:

  • pochodzą z biblioteki Adobe® Type Library;

  • wyglądają dobrze na telewizorach;

  • są przeznaczone do tworzenia napisów w filmach wideo;

  • stanowią kontury czcionek, a nie czcionki bitmapowe.

Uwaga: Producenci urządzeń często umieszczają na urządzeniach inne czcionki. Takie czcionki zapewniane przez producenta są instalowane oprócz czcionek urządzeń telewizyjnych ze środowiskiem AIR.

Firma Adobe oferuje aplikację o nazwie FontMaster Deluxe, która umożliwia wyświetlenie wszystkich czcionek dostępnych na urządzeniu. Ta aplikacja jest dostępna w temacie Platforma Flash dla urządzeń telewizyjnych .

Czcionki można również osadzić w aplikacji AIR dla urządzeń telewizyjnych. Więcej informacji dotyczących osadzania czcionek zawiera temat Zaawansowane renderowanie tekstu w dokumencie ActionScript 3.0 — Podręcznik programistów .

Oto zalecenia firmy Adobe dotyczące używania pól tekstowych TLF:

  • Pól tekstowych TLF należy używać w przypadku tekstu w językach azjatyckich, aby korzystać z ustawień regionalnych, w którym działa aplikacja. Należy ustawić właściwość locale obiektu TextLayoutFormat powiązanego z obiektem TLFTextField. Aby określić bieżące ustawienie regionalne, należy zapoznać się z tematem Wybieranie ustawień regionalnych w dokumencie ActionScript 3.0 — Podręcznik programistów .

  • Jeśli czcionka nie jest jedną z czcionek urządzeń telewizyjnych ze środowiskiem AIR, należy określić nazwę tej czcionki we właściwości fontFamily obiektu TextLayoutFormat. Środowisko AIR dla urządzeń telewizyjnych używa czcionki, jeśli jest ona dostępna na urządzeniu. Jeśli wymagana czcionka nie jest dostępna na urządzeniu, w zależności od ustawienia locale środowisko AIR dla urządzeń telewizyjnych zastępuje ją odpowiednią czcionką urządzenia telewizyjnego ze środowiskiem AIR.

  • Aby środowisko AIR dla urządzeń telewizyjnych mogło wybrać odpowiednią czcionkę urządzenia telewizyjnego ze środowiskiem AIR, wraz z ustawieniem właściwości locale należy określić wartość _sans , _serif, lub _typewriter dla właściwości fontFamily . W zależności od ustawienia regionalnego środowisko AIR dla urządzeń telewizyjnych wybierze czcionkę z zestawu azjatyckich lub innych niż azjatyckie czcionek urządzenia. Te ustawienia oferują łatwy sposób automatycznego używania poprawnej czcionki dla czterech głównych azjatyckich ustawień regionalnych i dla języka angielskiego.

Uwaga: W celu zagwarantowania prawidłowego renderowania w przypadku używania klasycznych pól tekstowych dla tekstu w języku azjatyckim należy określić nazwę czcionki urządzenia telewizyjnego ze środowiskiem AIR. Jeśli wiadomo, że na urządzeniu docelowym jest również zainstalowana inna czcionka, można określić także tę czcionkę.

Należy wziąć pod uwagę następujące aspekty dotyczące wydajności aplikacji:

  • Klasyczne pola tekstowe oferują wyższą wydajność niż pola tekstowe TLF.

  • Najwyższą wydajność oferuje klasyczne pole tekstowe korzystające z czcionek bitmapowych.

    W przeciwieństwie do czcionek konturowych, które podają wyłącznie dane konturów dla każdego znaku, czcionki bitmapowe zawierają bitmapę dla każdego znaku. Czcionkami bitmapowymi mogą być zarówno czcionki urządzenia, jak i czcionki osadzone.

  • W przypadku określenia czcionki urządzenia należy upewnić się, że na urządzeniu docelowym jest zainstalowana dana czcionka urządzenia. Jeśli nie będzie ona zainstalowana na urządzeniu, środowisko AIR dla urządzeń telewizyjnych znajdzie i zastosuje inną czcionkę zainstalowaną na urządzeniu. Jednak takie zachowanie obniża wydajność aplikacji.

  • Tak jak w przypadku każdego innego obiektu ekranowego, jeśli obiekt TextField prawie się nie zmienia, dla właściwości cacheAsBitmap obiektu należy ustawić wartość true . To ustawienie zwiększa wydajność w przypadku przejść takich jak zanikanie, przesuwanie i mieszanie alfa. Do skalowania i translacji należy używać właściwości cacheAsBitmapMatrix . Więcej informacji można znaleźć w rozdziale Sprzętowe przyspieszanie grafiki .

Zabezpieczenia systemu plików

Aplikacje AIR dla urządzeń telewizyjnych są aplikacjami AIR, więc mogą uzyskiwać dostęp do systemu plików urządzenia. Jednak w przypadku urządzeń „domowych” jest niezwykle ważne, aby aplikacja nie mogła uzyskiwać dostępu do plików systemowych urządzenia ani do plików innych aplikacji. Użytkownicy telewizorów i powiązanych urządzeń nie oczekują ani nie tolerują żadnych awarii — w końcu oglądają telewizję.

Dlatego aplikacja AIR dla urządzeń telewizyjnych ma ograniczony wgląd w system plików urządzenia. Dzięki użyciu języka ActionScript 3.0 aplikacja może uzyskiwać dostęp do konkretnych katalogów (i ich podkatalogów). Nazwy katalogów używane w języku ActionScript nie są rzeczywistymi nazwami katalogów na urządzeniu. Ten dodatkowy poziom zabezpieczeń chroni aplikacje AIR dla urządzeń telewizyjnych od złośliwego lub przypadkowego uzyskiwania dostępu do plików lokalnych, które do nich nie należą.

Szczegółowe informacje zawiera temat Widok katalogów w aplikacjach AIR dla urządzeń telewizyjnych .

Obszar izolowany aplikacji AIR

Aplikacje AIR dla urządzeń telewizyjnych działają w obszarze izolowanym aplikacji AIR opisanym w temacie Obszar izolowany aplikacji AIR .

Jedyną różnicą w przypadku aplikacji AIR dla urządzeń telewizyjnych jest to, że mają one ograniczony dostęp do systemu plików, zgodnie z opisem w sekcji Zabezpieczenia systemu plików .

Cykl życia aplikacji

W przeciwieństwie do działania w środowisku komputerowym użytkownik nie może zamknąć okna, w którym działa aplikacja AIR dla urządzeń telewizyjnych. Dlatego należy zapewnić mechanizm interfejsu użytkownika służący do kończenia działania aplikacji.

Zazwyczaj urządzenie pozwala użytkownikowi końcowemu bezwarunkowo zakończyć działanie aplikacji za pomocą klawisza zakończenia na pilocie zdalnego sterowania. Środowisko AIR dla urządzeń telewizyjnych nie wywołuje jednak zdarzenia flash.events.Event.EXITING względem aplikacji. Z tego powodu należy często zapisywać stan aplikacji, aby mogła ona przywrócić się do rozsądnego stanu przy następnym uruchomieniu.

Pliki cookie języka HTML

Środowisko AIR dla urządzeń telewizyjnych obsługuje trwałe pliki cookie HTTP i pliki cookie sesji. Środowisko AIR dla urządzeń telewizyjnych przechowuje pliki cookie poszczególnych aplikacji AIR w odpowiednich katalogach:

/app-storage/<app id>/Local Store

Plik zawierający pliki cookie ma nazwę cookies .

Uwaga: Środowisko AIR na innych urządzeniach, takich jak komputery, nie przechowuje plików cookie osobno dla każdej aplikacji. Funkcja przechowywania plików cookie specyficznych dla aplikacji obsługuje model zabezpieczeń aplikacji i systemu w środowisku AIR dla urządzeń telewizyjnych.

Właściwości URLRequest.manageCookies języka ActionScript należy używać w następujący sposób:

  • Ustaw dla właściwości manageCookies wartość true . Jest to wartość domyślna. Oznacza to, że środowisko AIR dla urządzeń telewizyjnych automatycznie dodaje pliki cookie do żądań HTTP i zapamiętuje pliki cookie w odpowiedzi HTTP.

    Uwaga: Nawet gdy wartość właściwości manageCookies wynosi true , aplikacja może dodać plik cookie do żądania HTTP za pomocą właściwości URLRequest.requestHeaders . Jeśli ten plik cookie ma tę samą nazwę co plik cookie zarządzany przez środowisko AIR dla urządzeń telewizyjnych, żądanie zawiera dwa pliki cookie o tej samej nazwie. Wartości obu plików cookie mogą się różnić.
  • Dla właściwości manageCookies należy ustawić wartość false . Ta wartość oznacza, że to aplikacja jest odpowiedzialna za wysyłanie plików cookie w żądaniach HTTP i zapamiętywanie plików cookie w odpowiedzi HTTP.

Więcej informacji zawiera opis klasy URLRequest .