Pakiet Android App Bundle to format publikowania, który obejmuje cały skompilowany kod i zasoby aplikacji oraz opóźnia generowanie plików APK i podpisywanie ich w Google Play.
Google Play używa Twojego pakietu aplikacji do generowania i udostępniania zoptymalizowanych plików APK dla każdej konfiguracji urządzenia. Dzięki temu do uruchomienia aplikacji jest pobierany tylko kod i zasoby niezbędne dla danego urządzenia. Nie musisz już tworzyć i podpisywać wielu plików APK ani nimi zarządzać, aby zoptymalizować obsługę różnych urządzeń, a użytkownicy otrzymują mniejsze i bardziej zoptymalizowane pliki do pobrania.
Utworzenie większości projektów aplikacji nie wymaga wiele wysiłku. Tworzenie pakietów aplikacji obsługujących udostępnianie zoptymalizowanych plików APK nie wymaga wiele wysiłku. Jeśli masz już uporządkowany kod i zasoby aplikacji zgodnie z ustalonymi konwencjami, utwórz podpisane pakiety aplikacji na Androida w Android Studio lub przy użyciu wiersza poleceń i prześlesz je do Google Play, wówczas zoptymalizowane wyświetlanie plików APK stanie się automatyczną zaletą.
Jeśli do publikowania aplikacji używasz formatu pakietów aplikacji, możesz też opcjonalnie skorzystać z funkcji Play Feature Delivery, która umożliwia dodanie modułów funkcji do projektu aplikacji. Te moduły zawierają funkcje i zasoby, które są dostępne w Twojej aplikacji tylko na podstawie określonych przez Ciebie warunków lub są dostępne później w czasie działania do pobrania za pomocą podstawowej biblioteki Google Play.
Deweloperzy gier, którzy publikują swoje aplikacje w formie pakietów aplikacji, mogą korzystać z Play Asset Delivery. Jest to rozwiązanie Google Play, które pozwala dostarczać duże ilości zasobów gry i oferuje elastyczne metody przesyłania oraz wysoką wydajność.
Obejrzyj ten film, by dowiedzieć się, dlaczego warto opublikować aplikację za pomocą pakietów Android App Bundle.
Ograniczenie rozmiaru pobieranego pliku skompresowanego
Publikowanie aplikacji za pomocą pakietów Android App Bundle pomaga użytkownikom instalować aplikację przy jak najmniejszej liczbie pobrań i zwiększa rozmiar skompresowanego pliku do pobrania. Oznacza to, że gdy użytkownik pobiera aplikację, łączny rozmiar skompresowanych plików APK wymaganych do jej zainstalowania (np. podstawowego pliku APK i plików APK konfiguracji) nie może przekraczać 4 GB. Wszystkie pliki do pobrania, takie jak pobieranie modułu funkcji (i jego plików APK) na żądanie, również muszą spełniać to ograniczenie rozmiaru skompresowanego pliku. Pakiety zasobów nie mają wpływu na ten limit rozmiaru, ale obowiązują w nich inne ograniczenia rozmiaru.
Jeśli Konsola Play wykryje, że liczba pobrań Twojej aplikacji lub jej funkcji na żądanie przekracza limit rozmiaru, pojawi się błąd.
Pamiętaj, że pakiety Android App Bundle nie obsługują plików rozszerzeń APK (*.obb
). Jeśli więc podczas publikowania pakietu aplikacji napotkasz ten błąd, zmniejsz rozmiar skompresowanego pliku APK, korzystając z jednego z tych zasobów:
- Pamiętaj, aby włączyć wszystkie pliki APK konfiguracji, ustawiając
enableSplit = true
dla każdego typu pliku APK konfiguracji. Dzięki temu użytkownicy będą mogli pobrać tylko kod i zasoby niezbędne do uruchomienia aplikacji na urządzeniu. - Pamiętaj, aby zmniejszyć aplikację, usuwając nieużywany kod i zasoby.
- Postępuj zgodnie ze sprawdzonymi metodami, aby jeszcze bardziej zmniejszyć rozmiar aplikacji.
- Rozważ przekształcenie funkcji, z których korzystają tylko niektórzy użytkownicy, na moduły funkcji, które aplikacja będzie mogła później na żądanie pobrać. Pamiętaj, że może to wymagać refaktoryzacji aplikacji, więc najpierw wypróbuj inne opisane sugestie.
Inne rzeczy, które warto wziąć pod uwagę
Poniżej znajdziesz znane problemy z tworzeniem lub wyświetlaniem aplikacji za pomocą pakietów Android App Bundle. Jeśli napotkasz problemy, które nie zostały tu opisane, zgłoś błąd.
- Częściowe instalacje aplikacji zainstalowanych z nieoficjalnych źródeł – czyli takich, które nie zostały zainstalowane ze Sklepu Google Play i nie mają co najmniej jednego wymaganego dzielonego pakietu APK – nie zostaną ukończone na wszystkich urządzeniach z certyfikatem Google i urządzeniach z Androidem 10 (poziom interfejsu API 29) lub nowszym. Jeśli pobierasz aplikację ze Sklepu Google Play, masz pewność, że wszystkie wymagane komponenty są zainstalowane.
Jeśli używasz narzędzi, które dynamicznie zmieniają tabele zasobów, pliki APK generowane z pakietów aplikacji mogą działać w nieoczekiwany sposób. Dlatego podczas tworzenia pakietu aplikacji zalecamy wyłączenie takich narzędzi.
Można skonfigurować właściwości w konfiguracji kompilacji modułu funkcji, która koliduje z tymi z modułu podstawowego (lub innych). Na przykład możesz ustawić
buildTypes.release.debuggable = true
w module podstawowym ifalse
w module funkcji. Takie konflikty mogą powodować problemy z kompilacją i czasem działania. Pamiętaj, że moduły funkcji domyślnie dziedziczą niektóre konfiguracje kompilacji z modułu podstawowego. Dlatego w konfiguracji kompilacji modułu funkcji sprawdź, które konfiguracje warto zachować, a które pominąć.
Dodatkowe materiały
Więcej informacji o pakietach Android App Bundle znajdziesz w tych materiałach.
Posty na blogu
- Tworzenie pierwszego pakietu aplikacji
- Co nowy format publikowania oznacza dla przyszłości Androida
- Nowe funkcje, które pomogą Ci tworzyć i publikować, a także rozwijać swoją firmę w Google Play
- Najnowsze aktualizacje pakietów Android App Bundle, w tym interfejs API dodatkowych języków
- Patchwork Plaid — historia modularyzacji
- Trasa Świętego Mikołaja w Google – przejście na pakiet Android App Bundle
- Narzędzia dla deweloperów w Konsoli Play
Filmy
- Wszystko, co musisz wiedzieć o podpisywaniu aplikacji przez Google Play
- Tworzenie pierwszego pakietu aplikacji
- Pakiety aplikacji: testowanie za pomocą narzędzia Bundletool i Konsoli Play
- Dostosowane przesyłanie dzięki pakietowi aplikacji i łatwemu udostępnianiu kompilacji testowych
- Nowe narzędzia do optymalizacji rozmiaru aplikacji i zwiększenia liczby instalacji w Google Play