Pakiety APK systemu Android

Tworzenie pakietu APK

Do utworzenia pakietu APK należy użyć polecenia package narzędzia ADT, ustawiając dla typu docelowego wartość apk w przypadku wersji do rozpowszechniania, apk-debug w przypadku wersji do debugowania i apk-emulator w przypadku kompilacji do rozpowszechniania, które będą uruchamiane w emulatorze.

adt     -package 
                                -target apk 
                                -storetype pkcs12 -keystore ../codesign.p12 
                                myApp.apk 
                                myApp-app.xml 
                                myApp.swf icons

Całe polecenie należy wpisać w jednym wierszu. Znaki podziału wiersza umieszczono w powyższym przykładzie wyłącznie w celu poprawienia czytelności. W powyższym przykładzie założono również, że ścieżka narzędzia ADT znajduje się w definicji ścieżek powłoki wiersza poleceń. (W celu uzyskania pomocy zapoznaj się z tematem Zmienne środowiskowe ścieżek ).

Polecenie należy uruchomić w katalogu zawierającym pliki aplikacji. Pliki aplikacji użyte w tym przykładzie to myApp-app.xml (plik deskryptora aplikacji), myApp.swf i katalog ikon.

Po uruchomieniu polecenia w przedstawiony sposób narzędzie ADT wyświetli monit o podanie hasła magazynu kluczy. (Znaki hasła nie są wyświetlane. Po zakończeniu wpisywania należy nacisnąć klawisz Enter).

Uwaga: Domyślnie wszystkie aplikacje AIR for Android mają przedrostek pakietu air. . Aby wyłączyć to zachowanie, ustaw zmienną środowiskową AIR_NOANDROIDFLAIR na wartość true na komputerze.

Tworzenie pakietu APK dla aplikacji korzystającej z rozszerzeń natywnych

Aby utworzyć pakiet APK dla aplikacji korzystającej z rozszerzeń natywnych, należy dodać opcję -extdir oprócz normalnych opcji pakowania. W przypadku wielu plików ANE korzystających ze wspólnych zasobów/bibliotek program ADT wybiera tylko jeden zasób/jedną bibliotekę i ignoruje powielone wpisy, generując ostrzeżenie. Ta opcja określa katalog zawierający pliki ANE używane przez aplikację. Na przykład:

adt     -package 
                                -target apk 
                                -storetype pkcs12 -keystore ../codesign.p12 
                                myApp.apk 
                                myApp-app.xml 
                                -extdir extensionsDir 
                                myApp.swf icons

Tworzenie pakietu APK zawierającego własną wersję środowiska wykonawczego AIR

Aby utworzyć pakiet APK zawierający aplikację i dołączoną wersję środowiska wykonawczego AIR, należy użyć typu docelowego apk-captive-runtime . Ta opcja określa katalog zawierający pliki ANE używane przez aplikację. Na przykład:

adt     -package 
                                -target apk-captive-runtime 
                                -storetype pkcs12 -keystore ../codesign.p12 
                                myApp.apk 
                                myApp-app.xml 
                                myApp.swf icons

Potencjalne wady tej techniki:

  • Krytyczne poprawki zabezpieczeń nie są automatycznie udostępniane użytkownikom po opublikowaniu przez firmę Adobe.

  • Aplikacja wymaga więcej pamięci RAM.

Uwaga: W przypadku dołączenia środowiska wykonawczego narzędzie ADT dodaje uprawnienia INTERNET i BROADCAST_STICKY do aplikacji. Te uprawnienia są wymagane przez środowisko wykonawcze AIR.

Tworzenie pakietu debugowania APK

Aby utworzyć wersję aplikacji, której można używać z debugerem, należy użyć wartości apk-debug dla typu docelowego i określić opcje połączenia.

adt     -package 
                                -target apk-debug 
                                -connect 192.168.43.45 
                                -storetype pkcs12 -keystore ../codesign.p12 
                                myApp.apk 
                                myApp-app.xml 
                                myApp.swf icons

Flaga -connect powiadamia środowisko wykonawcze AIR na urządzeniu o tym, gdzie należy nawiązać przez sieć połączenie ze zdalnym debugerem. Aby przeprowadzić debugowanie za pośrednictwem połączenia USB, należy zamiast tego ustawić flagę -listen , określając port TCP na potrzeby połączenia z debugerem.

adt     -package 
                                -target apk-debug 
                                -listen 7936 
                                -storetype pkcs12 -keystore ../codesign.p12 
                                myApp.apk 
                                myApp-app.xml 
                                myApp.swf icons

Aby działała większość funkcji debugowania, należy skompilować pliki SWF i SWC przy włączonym debugowaniu. Pełny opis flag -connect i -listen zawiera rozdział Opcje połączenia debugera .

Uwaga: Domyślnie program ADT integruje środowisko wykonawcze AIR podczas pakowania aplikacji dla systemu Android przy użyciu celu apk-debug. Aby wymusić utworzenie w programie ADT pliku APK używającego zewnętrznego środowiska wykonawczego, należy ustawić zmienną środowiskową AIR_ANDROID_SHARED_RUNTIME na true .

Aby aplikacja w systemie Android mogła nawiązać połączenie z komputerem przeprowadzającym debugowanie przez sieć, musi ona mieć również uprawnienie do uzyskiwania dostępu do Internetu. Zobacz Uprawnienia w systemie Android .

Tworzenie pakietu APK do użytku w emulatorze systemu Android

W emulatorze systemu Android można używać pakietu debugowania APK, ale nie pakietu w trybie do rozpowszechniania. Aby utworzyć pakiet APK przeznaczony do użytku w emulatorze, należy użyć polecenia package programu ADT, ustawiając dla typu docelowego wartość apk-emulator .

adt -package -target apk-emulator -storetype pkcs12 -keystore ../codesign.p12 myApp.apk myApp-app.xml myApp.swf icons

W tym przykładzie przyjęto, że ścieżka do narzędzia ADT znajduje się w definicji ścieżki powłoki wiersza poleceń. (W celu uzyskania pomocy zapoznaj się z tematem Zmienne środowiskowe ścieżek ).

Tworzenie pakietu APK z pliku AIR lub AIRI

Pakiet APK można utworzyć bezpośrednio z istniejącego pliku AIR lub AIRI.

adt -target apk -storetype pkcs12 -keystore ../codesign.p12 myApp.apk myApp.air

Plik AIR musi używać przestrzeni nazw AIR 2.5 (lub nowszej) w pliku deskryptora aplikacji.

Tworzenie pakietu APK dla platformy Android x86

Od wersji środowiska AIR 14 argument -arch pozwala spakować plik APK dla platformy Android x86. Na przykład:

    adt     -package 
                                -target apk-debug 
                                -listen 7936 
                                -arch x86 
                                -storetype pkcs12 -keystore ../codesign.p12 
                                myApp.apk 
                                myApp-app.xml 
                                myApp.swf icons