Ten dokument zawiera omówienie działań związanych z programowaniem i testowaniem, które możesz podjąć, aby dostosować się do harmonogramu publikacji platformy Androida i zapewnić użytkownikom płynne działanie aplikacji na Androidzie 17.
W każdej wersji Androida wprowadzamy nowe funkcje i zmiany w zachowaniu, aby system był bardziej pomocny, bezpieczny i wydajny. W wielu przypadkach aplikacja będzie działać dokładnie tak, jak oczekujesz, ale w innych może być konieczne jej zaktualizowanie, aby dostosować ją do zmian na platformie.
Użytkownicy mogą zacząć korzystać z nowej platformy, gdy tylko kod źródłowy zostanie opublikowany w projekcie Android Open Source Project (AOSP). Dlatego ważne jest, aby Twoje aplikacje były gotowe, działały zgodnie z oczekiwaniami użytkowników i najlepiej wykorzystywały nowe funkcje i interfejsy API, aby w pełni wykorzystać możliwości nowej platformy.
Typowa migracja składa się z 2 faz, które mogą przebiegać równolegle:
- zapewnienie zgodności aplikacji (do czasu ostatecznej wersji Androida 17);
- Uwzględnianie nowych funkcji platformy i interfejsów API (jak najszybciej po ostatecznej wersji)
Zapewnianie zgodności z Androidem 17
Ważne jest, aby przetestować działanie dotychczasowej aplikacji na Androidzie 17, aby zapewnić użytkownikom aktualizującym system do najnowszej wersji Androida jak najlepsze wrażenia. Niektóre zmiany na platformie mogą wpływać na działanie aplikacji, dlatego ważne jest, aby wcześnie i dokładnie ją przetestować i wprowadzić niezbędne zmiany.
Zwykle możesz dostosować aplikację i opublikować aktualizację bez konieczności zmiany jej targetSdkVersion. Podobnie nie powinno być konieczne używanie nowych interfejsów API ani zmienianie compileSdkVersion aplikacji, chociaż może to zależeć od sposobu jej utworzenia i funkcji platformy, z których korzysta.
Zanim zaczniesz testowanie, zapoznaj się ze zmianami w zachowaniu wszystkich aplikacji. Te zmiany mogą mieć wpływ na Twoją aplikację, nawet jeśli nie zmienisz jej targetSdkVersion.
Wgraj obraz systemu Android 17 na urządzenie lub pobierz obraz systemu dla emulatora Androida.
Sprawdź zmiany w zachowaniu systemu, aby zidentyfikować obszary, w których może to mieć wpływ na Twoją aplikację.
Zainstaluj aplikację na urządzeniu lub emulatorze i przeprowadź testy. Skup się na zmianach w zachowaniu systemu i przetestuj wszystkie procesy w aplikacji.
Wprowadź tylko te zmiany w kodzie, które są wymagane do dostosowania się do zmian w zachowaniu lub rozwiązania problemów. Skompiluj ponownie z tym samym poziomem interfejsu API, na który pierwotnie była kierowana aplikacja – nie musisz kierować jej na Androida 17.
Podpisz, prześlij i opublikuj zaktualizowany pakiet Android App Bundle lub plik APK.
Testowanie zgodności aplikacji z Androidem 17
W większości przypadków testowanie zgodności z Androidem 17 jest podobne do zwykłego testowania aplikacji. To dobry moment, aby zapoznać się ze wskazówkami dotyczącymi jakości podstawowych aplikacji i sprawdzonymi metodami testowania.
Aby przeprowadzić test, zainstaluj obecnie opublikowaną aplikację na urządzeniu z Androidem 17 i przejdź przez procesy i funkcje, aby zidentyfikować problemy. Aby skupić się na testach, zapoznaj się ze zmianami w działaniu wszystkich aplikacji wprowadzonymi w Androidzie 17, które mogą wpływać na działanie aplikacji lub powodować jej awarię.
Pamiętaj też, aby sprawdzić i przetestować przypadki użycia interfejsów spoza pakietu SDK. Wszystkie ograniczone interfejsy używane przez aplikację należy zastąpić odpowiednikami z publicznego pakietu SDK lub NDK. Zwracaj uwagę na ostrzeżenia logcat, które wskazują te przypadki dostępu, i używaj metody StrictMode detectNonSdkApiUsage(), aby wykrywać je automatycznie.
Na koniec dokładnie przetestuj biblioteki i pakiety SDK w aplikacji, aby upewnić się, że działają zgodnie z oczekiwaniami na Androidzie 17 i są zgodne ze sprawdzonymi metodami dotyczącymi prywatności, wydajności, UX, obsługi danych i uprawnień. Jeśli znajdziesz problem, spróbuj zaktualizować pakiet SDK do najnowszej wersji lub skontaktuj się z deweloperem pakietu SDK, aby uzyskać pomoc.
Po zakończeniu testów i wprowadzeniu zmian zalecamy natychmiastowe opublikowanie zgodnej aplikacji. Dzięki temu użytkownicy będą mogli wcześniej przetestować aplikację, co ułatwi im przejście na Androida 17.
Zaktualizuj kierowanie aplikacji i utwórz ją z nowymi interfejsami API
Po opublikowaniu zgodnej wersji aplikacji następnym krokiem jest dodanie pełnej obsługi Androida 17 przez zaktualizowanie targetSdkVersion i wykorzystanie nowych interfejsów API i funkcji Androida 17.
Możesz wprowadzić te zmiany, gdy tylko będziesz gotowy(-a). Pamiętaj o wymaganiach Google Play dotyczących kierowania na nową platformę.
Planując pracę nad pełną obsługą Androida 17, zapoznaj się ze zmianami w działaniu, które wpływają na aplikacje kierowane na Androida 17. Te zmiany w działaniu mogą powodować problemy z funkcjonalnością, które trzeba będzie rozwiązać. W niektórych przypadkach te zmiany wymagają znacznych prac programistycznych, dlatego zalecamy jak najwcześniejsze zapoznanie się z nimi i ich wprowadzenie. Aby ułatwić identyfikację konkretnych zmian w zachowaniu, które mają wpływ na aplikację, użyj przełączników zgodności, aby przetestować aplikację z włączonymi wybranymi zmianami.
Poniżej opisujemy, jak zapewnić pełną obsługę Androida 17.
Zainstaluj najnowszą wersję testową Android Studio, aby tworzyć aplikacje na Androida 17. Upewnij się, że masz urządzenie lub emulator z Androidem 17.
Zaktualizuj targetSdkVersion i inne konfiguracje kompilacji.
Zapoznaj się ze zmianami w działaniu, które dotyczą aplikacji kierowanych na Androida 17. Określ obszary, na które może mieć wpływ Twoja aplikacja, i zaplanuj, jak je wesprzeć.
Wprowadź zmiany w kodzie i architekturze, aby dostosować aplikację do zmian dotyczących prywatności użytkowników w Androidzie 17.
Korzystaj z interfejsów API Androida 17, aby wprowadzać w aplikacjach nowe funkcje i możliwości. Skompiluj ponownie na Androida 17.
Przetestuj na urządzeniu z Androidem 17 lub emulatorze. Skup się na obszarach, w których zmiany zachowania mogą mieć wpływ na Twoją aplikację. Wypróbuj funkcje, które korzystają z nowych interfejsów API. Przesyłanie opinii o platformie i interfejsie API. zgłaszać problemy z platformą, interfejsem API lub pakietem SDK innej firmy;
Gdy interfejsy API Androida 17 będą już ostateczne, ponownie zaktualizuj targetSdkVersion i inne konfiguracje kompilacji, wprowadź dodatkowe zmiany i przetestuj aplikację.
Podpisz, prześlij i opublikuj zaktualizowany pakiet Android App Bundle lub plik APK.
Pobieranie pakietu SDK, zmiana kierowania, tworzenie aplikacji z użyciem nowych interfejsów API
Aby rozpocząć testowanie pełnej obsługi Androida 17, użyj najnowszej wersji testowej Android Studio i pobierz pakiet SDK Androida 17 oraz inne potrzebne narzędzia. Następnie zaktualizuj targetSdkVersion i compileSdkVersion aplikacji i ponownie ją skompiluj. Szczegółowe informacje znajdziesz w przewodniku po konfiguracji pakietu SDK.
Testowanie aplikacji na Androida 17
Po skompilowaniu aplikacji i zainstalowaniu jej na urządzeniu z Androidem 17 rozpocznij testowanie, aby upewnić się, że aplikacja działa prawidłowo na Androidzie 17. Niektóre zmiany w zachowaniu mają zastosowanie tylko wtedy, gdy aplikacja jest kierowana na nową platformę, dlatego przed rozpoczęciem warto zapoznać się z tymi zmianami.
Podobnie jak w przypadku podstawowych testów zgodności, sprawdź wszystkie procesy i funkcje pod kątem problemów. Skup się na testowaniu zmian w działaniu aplikacji kierowanych na Androida 17. Warto też sprawdzić, czy aplikacja jest zgodna ze wskazówkami dotyczącymi jakości i sprawdzonymi metodami testowania.
Sprawdź i przetestuj użycie ograniczonych interfejsów innych niż SDK, które mogą mieć zastosowanie. Zwracaj uwagę na ostrzeżenia logcat, które wskazują na takie przypadki dostępu, i używaj metody StrictMode detectNonSdkApiUsage(), aby wykrywać je automatycznie.
Na koniec dokładnie przetestuj biblioteki i pakiety SDK w aplikacji, aby upewnić się, że działają zgodnie z oczekiwaniami na Androidzie 17 i są zgodne ze sprawdzonymi metodami dotyczącymi prywatności, wydajności, UX, obsługi danych i uprawnień. Jeśli znajdziesz problem, spróbuj zaktualizować pakiet SDK do najnowszej wersji lub skontaktuj się z deweloperem pakietu SDK, aby uzyskać pomoc.
Testowanie za pomocą przełączników zgodności aplikacji
Android 17 zawiera przełączniki zgodności, które ułatwiają testowanie aplikacji z uwzględnieniem zmian w działaniu. W przypadku aplikacji z możliwością debugowania przełączniki umożliwiają:
- Testuj zmiany ukierunkowane bez faktycznej zmiany wartości targetSdkVersion aplikacji. Możesz użyć przełączników, aby wymusić włączenie określonych zmian zachowania, i ocenić ich wpływ na dotychczasową aplikację.
- Skup się na testowaniu tylko konkretnych zmian. Zamiast wprowadzać wszystkie zmiany kierowania naraz, możesz za pomocą przełączników wyłączyć wszystkie zmiany kierowania oprócz tych, które chcesz przetestować.
- Zarządzanie przełącznikami za pomocą adb Możesz używać poleceń adb, aby włączać i wyłączać zmiany w automatycznym środowisku testowym.
- Szybsze debugowanie dzięki standardowym identyfikatorom zmian Każda zmiana, którą można przełączać, ma unikalny identyfikator i nazwę, których możesz użyć do szybkiego debugowania głównej przyczyny w danych wyjściowych logu.
Przełączniki mogą pomóc, gdy przygotowujesz się do zmiany kierowania aplikacji lub aktywnie pracujesz nad obsługą Androida 17. Więcej informacji znajdziesz w artykule Zmiany w systemie sprawdzania zgodności (Android 17).