W każdej wersji Androida wprowadzamy nowe funkcje i zmiany w działaniu, aby zwiększyć użyteczność, bezpieczeństwo i wydajność Androida. W wielu przypadkach po wyjęciu z pudełka aplikacja będzie działać dokładnie tak, jak chcesz, a w innych trzeba będzie wprowadzić w niej zmiany, aby dostosować się do zmian na platformie.
Użytkownicy mogą zacząć otrzymywać dostęp do nowej platformy zaraz po opublikowaniu kodu źródłowego w projekcie AOSP (Android Open Source Project), dlatego ważne jest, aby aplikacje były gotowe do działania, działały zgodnie z oczekiwaniami i najlepiej wykorzystują nowe funkcje i interfejsy API, aby w pełni wykorzystać możliwości nowej platformy.
Ten dokument zawiera ogólny przegląd typowych faz programowania i testowania. Pomaga on opracować plan gotowości zgodny z harmonogramem wprowadzania zmian na platformie i zapewniający użytkownikom doskonałe wrażenia podczas korzystania z Androida 11.
Typowa migracja składa się z 2 faz, które mogą przebiegać równocześnie:
- Zapewnianie zgodności aplikacji (w końcowej wersji Androida 11)
- Kierowanie na nowe funkcje platformy i interfejsy API (jak najszybciej po ostatecznej wersji).
Na tej stronie przedstawiono ogólne instrukcje dotyczące poszczególnych etapów. Aby rozpocząć, przeczytaj artykuł Jak zacząć korzystać z Androida 11.
Zgodność z Androidem 11
Ważne jest przetestowanie funkcji istniejącej aplikacji w porównaniu z Androidem 11 w celu zapewnienia wygody użytkownikom, którzy przechodzą na najnowszą wersję Androida. Niektóre zmiany na platformie mogą wpływać na działanie aplikacji, dlatego ważne jest, by przeprowadzić testy wcześnie i gruntownie oraz w razie potrzeby wprowadzić w niej zmiany.
Zwykle możesz dostosować aplikację i opublikować aktualizację bez konieczności zmiany targetSdkVersion
aplikacji. Nie trzeba też używać nowych interfejsów API ani zmieniać compileSdkVersion
aplikacji, choć zależy to od sposobu jej utworzenia oraz funkcji platformy. W sekcjach poniżej znajdziesz opis poszczególnych kroków.
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 przebiega zwykle podobnie do tych, które wykonujesz, przygotowując się do opublikowania aplikacji. To dobry moment na zapoznanie się ze wskazówkami dotyczącymi jakości aplikacji i sprawdzonymi metodami testowania.
Wystarczy, że zainstalujesz na urządzeniu z Androidem 11 swoją opublikowaną aplikację i przeanalizujesz wszystkie jej procesy i funkcje, aby znaleźć problemy. Aby skupić się na testowaniu, zapoznaj się ze zmianami w działaniu wprowadzonymi w Androidzie 11, które mogą wpływać na działanie aplikacji lub powodować jej awarię. W szczególności zapoznaj się z najważniejszymi zmianami dotyczącymi prywatności i przetestuj wprowadzone poprawki.
Pamiętaj też, aby sprawdzić i przetestować użycie interfejsów spoza pakietu SDK, które są objęte ograniczeniami, i przejść na publiczne odpowiedniki pakietu SDK lub pakietu NDK. Szukaj ostrzeżeń logcat, które wyróżniają te uprawnienia dostępu, i używaj metody StrictMode detectNonSdkApiUsage()
do ich automatycznego wychwytywania.
Na koniec dokładnie przetestuj biblioteki i pakiety SDK w swojej aplikacji, aby mieć pewność, że działają one zgodnie z oczekiwaniami na Androidzie 11 i są zgodne ze sprawdzonymi metodami dotyczącymi prywatności, wydajności, wygody użytkowania, obsługi danych i uprawnień. Jeśli znajdziesz problem, zaktualizuj pakiet SDK do najnowszej wersji lub poproś o pomoc dewelopera pakietu.
Po zakończeniu testowania i wprowadzeniu zmian zalecamy jak najszybsze opublikowanie zgodnej aplikacji. Dzięki temu użytkownicy będą mogli wcześnie przetestować aplikację i zapewnić im płynne przejście podczas aktualizacji na Androida 11.
Zaktualizować kierowanie aplikacji i użyć nowych interfejsów API
Gdy opublikujesz zgodną wersję aplikacji w sposób opisany powyżej, możesz dodać do niej pełną obsługę Androida 11. W tym celu zaktualizuj targetSdkVersion
oraz wykorzystaj nowe interfejsy API i możliwości Androida 11. Możesz to zrobić od razu, pamiętając o wymaganiach Google Play związanych z kierowaniem na nową platformę.
Planując prace nad pełną obsługą Androida 11, warto zacząć od przeglądu zmian w działaniu, które dotyczą aplikacji kierowanych na Androida 11. Te kierowane zmiany działania mogą powodować problemy z działaniem, które mogą wymagać rozwiązania. Czasem mogą wymagać znacznych rozwoju, więc warto o nich dowiedzieć się jak najwięcej. Aby łatwiej ocenić wpływ tej zmiany, możesz też użyć przełączników zgodności, aby przetestować bieżącą aplikację z włączonymi wybranymi zmianami.
Aby dowiedzieć się, jak w pełni obsługiwać Androida 11, wykonaj opisane poniżej czynności.
Pobierz pakiet SDK, zmień kierowanie i twórz nowe interfejsy API
Aby zacząć korzystać z pełnej obsługi Androida 11, najpierw pobierz do Android Studio pakiet SDK do Androida 11 (i inne potrzebne narzędzia).
Następnie zmień targetSdkVersion
i compileSdkVersion
aplikacji na "30"
i ponownie skompiluj aplikację. Szczegółowe informacje znajdziesz w przewodniku po konfiguracji.
Testowanie aplikacji na Androida 11
Gdy skompilujesz aplikację i zainstalujesz ją na urządzeniu z Androidem 11, rozpocznij testy, aby mieć pewność, że działa ona prawidłowo podczas kierowania na ten system. Niektóre zmiany w działaniu mają zastosowanie tylko wtedy, gdy aplikacja jest kierowana na nową platformę, więc zanim zaczniesz z niej korzystać, przejrzyj te zmiany.
Tak jak w przypadku podstawowych testów zgodności, przechodź przez wszystkie procesy i funkcje w poszukiwaniu problemów. Skup się na testowaniu zmian w działaniu aplikacji kierowanych na Androida 11. W szczególności zapoznaj się ze zmianami dotyczącymi prywatności i przetestuj wprowadzone poprawki. To również dobry moment na sprawdzenie, czy aplikacja jest zgodna z podstawowymi wskazówkami dotyczącymi jakości aplikacji i sprawdzonymi metodami dotyczącymi testowania.
Pamiętaj, aby sprawdzić i przetestować, czy nie występują interfejsy inne niż SDK z ograniczeniami, które mogą mieć zastosowanie. Poszukaj ostrzeżeń logcat, które wyróżniają te uprawnienia dostępu, i użyj metody StrictMode detectNonSdkApiUsage()
, aby je automatycznie wychwytywać.
Na koniec dokładnie przetestuj biblioteki i pakiety SDK w swojej aplikacji, aby mieć pewność, że działają one zgodnie z oczekiwaniami na Androidzie 11 i są zgodne ze sprawdzonymi metodami dotyczącymi prywatności, wydajności, wygody użytkowania, obsługi danych i uprawnień. Jeśli znajdziesz problem, zaktualizuj pakiet SDK do najnowszej wersji lub poproś o pomoc dewelopera pakietu.
Testowanie za pomocą przełączników zgodności aplikacji
Android 11 wprowadza nową funkcję dla deweloperów, która ułatwia testowanie aplikacji z uwzględnieniem kierowanych zmian w działaniu. W przypadku aplikacji z możliwością debugowania przełączniki pozwalają:
- Przetestuj docelowe zmiany bez zmiany wartości targetSdkVersion. Możesz użyć przełączników, aby wymusić włączenie określonych kierowanych zmian działania w celu oceny ich wpływu na istniejącą aplikację.
- Skup się na testowaniu tylko określonych zmian. Zamiast zajmować się wszystkimi zmianami w kierowaniu naraz, przełączniki pozwalają wyłączyć wszystkie kierowane zmiany z wyjątkiem tych, które chcesz przetestować.
- Przełączami można zarządzać za pomocą narzędzia 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 przy użyciu standardowych identyfikatorów zmian. Każda zmiana, którą można przełączyć, ma unikalny identyfikator i nazwę, dzięki którym można szybko debugować główną przyczynę w danych wyjściowych.
Przełączniki mogą Ci pomóc, gdy przygotowujesz się do zmiany kierowania aplikacji lub jesteś w trakcie opracowywania obsługi Androida 11. Więcej informacji znajdziesz w odpowiedniej dokumentacji.