W każdej nowej wersji Androida wprowadzamy nowe funkcje i zmiany w działaniu systemu, aby był on bardziej pomocny, bezpieczniejszy i wydajniejszy. W wielu przypadkach aplikacja będzie działać od razu zgodnie z oczekiwaniami, ale w innych może być konieczne wprowadzenie w niej zmian, aby dostosować ją do zmian na platformie.
Użytkownicy mogą zacząć korzystać z nowej platformy od razu po udostępnieniu kodu źródłowego w AOSP (Android Open Source Project), dlatego ważne jest, aby aplikacje były gotowe i działały zgodnie z oczekiwaniami użytkowników. Najlepiej, jeśli będą też wykorzystywać nowe funkcje i interfejsy API, aby w pełni korzystać z nowej platformy.
Ten dokument zawiera ogólny opis typowych etapów tworzenia i testowania, które pomogą Ci opracować plan przygotowań dobrze dopasowany do harmonogramu wydania platformy i zapewniający użytkownikom doskonałe wrażenia w systemie Android 11.
Typowa migracja składa się z 2 faz, które mogą przebiegać równocześnie:
- Zapewnienie zgodności aplikacji (do czasu wydania ostatecznej wersji Androida 11)
- Korzystanie z nowych funkcji platformy i interfejsów API (jak najszybciej po ostatecznej wersji)
Na tej stronie znajdziesz ogólne instrukcje dotyczące każdego z tych etapów. Gdy wszystko będzie gotowe, przeczytaj artykuł Pobieranie Androida 11.
Zapewnienie zgodności z Androidem 11
Ważne jest, aby przetestować działanie obecnej aplikacji w Androidzie 11 i zapewnić użytkownikom, którzy zaktualizują system do najnowszej wersji, 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ć, a następnie wprowadzić niezbędne poprawki.
Zwykle możesz dostosować aplikację i opublikować aktualizację bez konieczności zmiany 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 tworzenia i funkcji platformy, z których korzysta. W kolejnych sekcjach opisujemy te kroki.
Zanim zaczniesz, zapoznaj się ze zmianami w działaniu, które mogą mieć wpływ na Twoją aplikację, nawet jeśli nie zmienisz jej targetSdkVersion
.
Przeprowadzanie testów zgodności
Testowanie zgodności z Androidem 11 jest w większości przypadków podobne do testów, które przeprowadzasz podczas przygotowywania aplikacji do publikacji. To dobry moment, aby zapoznać się z podstawowymi wytycznymi dotyczącymi jakości aplikacji i najlepszymi praktykami w zakresie testowania.
Wystarczy, że zainstalujesz opublikowaną aplikację na urządzeniu z Androidem 11 i sprawdzisz wszystkie procesy i funkcje, aby wykryć problemy. Aby ułatwić sobie testowanie, zapoznaj się ze zmianami w działaniu wprowadzonymi w Androidzie 11, które mogą mieć wpływ na działanie aplikacji lub powodować jej awarie. W szczególności zapoznaj się z najważniejszymi zmianami dotyczącymi prywatności i przetestuj wszelkie poprawki, które wprowadzisz w celu dostosowania się do tych zmian.
Sprawdź też, czy nie używasz interfejsów innych niż SDK, które są objęte ograniczeniami, i zastąp je publicznymi odpowiednikami SDK lub NDK. Wypatruj ostrzeżeń logcat, które wskazują na te dostępy, 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ą one zgodnie z oczekiwaniami na Androidzie 11 i są zgodne z najlepszymi praktykami w zakresie 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 jego deweloperem, aby uzyskać pomoc.
Po zakończeniu testów i wprowadzeniu zmian zalecamy natychmiastowe opublikowanie zgodnej aplikacji. Dzięki temu użytkownicy mogą wcześniej przetestować aplikację, a Ty możesz zapewnić im płynne przejście na Androida 11.
Zaktualizuj kierowanie aplikacji i utwórz ją za pomocą nowych interfejsów API
Po opublikowaniu zgodnej wersji aplikacji zgodnie z opisem powyżej kolejnym krokiem jest dodanie pełnej obsługi Androida 11 przez zaktualizowanie targetSdkVersion
i skorzystanie z nowych interfejsów API oraz funkcji Androida 11. Możesz to zrobić, gdy tylko będziesz gotowy(-a), pamiętając o wymaganiach Google Play dotyczących kierowania na nową platformę.
Podczas planowania pracy nad pełną obsługą Androida 11 warto zacząć od zapoznania się ze zmianami w działaniu aplikacji kierowanych na Androida 11. Te ukierunkowane zmiany w działaniu mogą powodować problemy z funkcjonalnością, które mogą wymagać rozwiązania. W niektórych przypadkach mogą one wymagać znacznego nakładu pracy, dlatego warto dowiedzieć się o nich jak najwcześniej. Aby pomóc Ci ocenić wpływ tych zmian, możesz też użyć przełączników zgodności do testowania bieżącej aplikacji z wybranymi zmianami.
Poniżej znajdziesz opis pełnej obsługi Androida 11.
Pobieranie pakietu SDK, zmienianie kierowania i tworzenie aplikacji z użyciem nowych interfejsów API
Aby zacząć korzystać z pełnej obsługi Androida 11, najpierw pobierz pakiet Android 11 SDK (i inne potrzebne narzędzia) do Android Studio.
Następnie zmień wartości targetSdkVersion
i compileSdkVersion
na "30"
i ponownie skompiluj aplikację. Szczegółowe informacje znajdziesz w przewodniku konfiguracji.
Testowanie aplikacji na Androida 11
Po skompilowaniu aplikacji i zainstalowaniu jej na urządzeniu z Androidem 11 rozpocznij testowanie, aby upewnić się, że działa ona prawidłowo w przypadku kierowania na Androida 11. Niektóre zmiany w działaniu mają zastosowanie tylko wtedy, gdy aplikacja jest kierowana na nową platformę, więc przed rozpoczęciem pracy zapoznaj się z tymi zmianami.
Podobnie jak w przypadku podstawowych testów zgodności, sprawdź wszystkie przepływy i funkcje pod kątem problemów. Skup się na testowaniu zmian w działaniu aplikacji kierowanych na Androida 11. W szczególności zapoznaj się ze zmianami w zakresie ochrony prywatności i przetestuj wszelkie poprawki, które wprowadzisz w celu dostosowania się do tych zmian. Warto też sprawdzić, czy aplikacja jest zgodna z podstawowymi wytycznymi dotyczącymi jakości aplikacji i sprawdzonymi metodami testowania.
Sprawdź i przetestuj przypadki użycia ograniczonych interfejsów innych niż SDK, które mogą mieć zastosowanie. W logcatach szukaj ostrzeżeń dotyczących tych dostępów i używaj metody StrictMode detectNonSdkApiUsage()
, aby wykrywać je programowo.
Na koniec dokładnie przetestuj biblioteki i pakiety SDK w aplikacji, aby upewnić się, że działają one zgodnie z oczekiwaniami na Androidzie 11 i są zgodne z najlepszymi praktykami w zakresie 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 jego deweloperem, aby uzyskać pomoc.
Testowanie za pomocą przełączników zgodności aplikacji
Android 11 wprowadza nową funkcję dla deweloperów, która ułatwia testowanie aplikacji pod kątem zmian w jej działaniu. W przypadku aplikacji, którą można debugować, przełączniki umożliwiają:
- Testuj zmiany kierowane bez faktycznej zmiany parametru targetSdkVersion aplikacji. Za pomocą przełączników możesz wymusić włączenie określonych zmian w zachowaniu ukierunkowanym, aby ocenić ich wpływ na dotychczasową aplikację.
- Skup się w testach tylko na konkretnych zmianach. Zamiast wprowadzać wszystkie zmiany jednocześnie, możesz wyłączyć wszystkie zmiany kierowane z wyjątkiem tych, które chcesz przetestować.
- Zarządzanie przełącznikami za pomocą adb Za pomocą poleceń adb możesz włączać i wyłączać zmiany, które można przełączać, w automatycznym środowisku testowym.
- Szybsze debugowanie dzięki standardowym identyfikatorom zmian Każda zmiana, którą można włączyć lub wyłączyć, ma niepowtarzalny identyfikator i nazwę, których możesz użyć do szybkiego debugowania przyczyny głównej w danych wyjściowych dziennika.
Podczas przygotowywania się do zmiany kierowania aplikacji lub w trakcie aktywnego opracowywania obsługi Androida 11 możesz skorzystać z przełączników. Więcej informacji znajdziesz w odpowiedniej dokumentacji.