W każdej wersji Androida wprowadzamy nowe funkcje oraz zmiany w działaniu Androida, aby zwiększyć jego użyteczność, bezpieczeństwo i wydajność. W wielu przypadkach aplikacja od razu działa zgodnie z oczekiwaniami. W innych może być konieczne wprowadzenie w niej zmian, aby dostosować się do zmian na platformie.
Ponieważ użytkownicy mogą zacząć korzystać z nowej platformy, gdy tylko kod źródłowy zostanie udostępniony AOSP (Android Open Source Project), aplikacje muszą być gotowe, działać zgodnie z oczekiwaniami użytkowników i optymalnie korzystać z nowych funkcji i interfejsów API, aby w pełni wykorzystać możliwości nowej platformy.
Ten dokument zawiera ogólny wgląd w typowe fazy programowania i testowania. Dzięki temu łatwiej przygotujesz plan gotowości, który będzie zgodny z harmonogramem premiery platformy i zapewni użytkownikom wygodę korzystania z Androida 11.
Typowa migracja składa się z 2 faz, które mogą być równoczesne:
- Zapewnienie zgodności aplikacji (do ostatniej wersji Androida 11).
- kierowanie reklam na nowe funkcje platformy i interfejsy API (jak najszybciej po opublikowaniu ostatecznej wersji).
Na tej stronie opisujemy ogólne czynności dla każdego z tych etapów. Aby rozpocząć, przeczytaj artykuł Pobierz Androida 11.
Zapewnianie zgodności z Androidem 11
Warto przetestować działanie istniejącej aplikacji w porównaniu z Androidem 11, aby zapewnić komfort użytkowników po aktualizacji do najnowszej wersji Androida. Niektóre zmiany na platformie mogą wpłynąć na działanie aplikacji, dlatego tak ważne jest przetestowanie aplikacji jak najszybciej i dokładnie, a potem wprowadzić w niej niezbędne poprawki.
Zwykle możesz dostosować aplikację i opublikować aktualizację bez konieczności zmiany jej targetSdkVersion
. Nie musisz też używać nowych interfejsów API ani zmieniać compileSdkVersion
aplikacji, chociaż może to zależeć od sposobu tworzenia aplikacji i wykorzystywanych przez nią funkcji platformy. Kolejne kroki znajdziesz w dalszej części tego artykułu.
Zanim zaczniesz, zapoznaj się ze zmianami w działaniu, które mogą wpłynąć na działanie aplikacji, nawet jeśli nie zmienisz targetSdkVersion
.
Testy zgodności
Testowanie zgodności z Androidem 11 najczęściej przypomina te, które wykonujesz, przygotowując się do opublikowania aplikacji. To dobry moment na zapoznanie się z podstawowymi wskazówkami dotyczącymi jakości aplikacji i sprawdzonymi metodami testowania.
Wystarczy, że zainstalujesz aktualnie opublikowaną aplikację na urządzeniu z Androidem 11 i przeprowadzisz wszystkie procesy i funkcje pod kątem problemów. Aby skupić się na testowaniu, zapoznaj się ze zmianami w działaniu wprowadzonych 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 wszystkie wprowadzone poprawki, aby dostosować je do nich.
Pamiętaj też, aby sprawdzić i przetestować użycie ograniczonych interfejsów innych niż SDK oraz przejść na publiczne ich odpowiedniki w pakiecie SDK lub NDK. Zwróć uwagę na ostrzeżenia logcat, które wyróżniają te przypadki dostępu, i użyj metody StrictMode detectNonSdkApiUsage()
, aby je automatycznie wychwytywać.
Pamiętaj też, aby w pełni przetestować biblioteki i pakiety SDK w swojej aplikacji, aby mieć pewność, że działają one zgodnie z oczekiwaniami na Androidzie 11, oraz postępować zgodnie ze sprawdzonymi metodami dotyczącymi ochrony prywatności, wydajności, wygody użytkowania, obsługi danych i uprawnień. Jeśli napotkasz problem, spróbuj zaktualizować pakiet SDK do najnowszej wersji lub poproś o pomoc jego dewelopera.
Po zakończeniu testów i wprowadzeniu aktualizacji zalecamy jak najszybsze opublikowanie zgodnej aplikacji. Dzięki temu użytkownicy będą mogli przetestować aplikację wcześniej i zapewnić im płynne przejście na Androida 11.
Zaktualizuj kierowanie aplikacji i zastosuj nowe interfejsy API
Po opublikowaniu zgodnej wersji aplikacji w opisany wcześniej sposób zadbaj o pełną obsługę Androida 11 przez aktualizację targetSdkVersion
i skorzystanie z nowych interfejsów API i możliwości Androida 11. Możesz zrobić to od razu, pamiętając o wymaganiach Google Play dotyczących kierowania na nową platformę.
Planując swoje działania, aby w pełni obsługiwać Androida 11, warto zacząć od przeanalizowania zmian w działaniu, które dotyczą aplikacji kierowanych na Androida 11. Te ukierunkowane zmiany w działaniu mogą powodować problemy z funkcjonowaniem, którymi należy się zająć. Czasem mogą wymagać dużych nakładów pracy, więc warto się o nich dowiedzieć jak najwcześniej. Aby ułatwić ocenę wpływu, możesz też użyć przełączników zgodności, aby przetestować bieżącą aplikację z włączonymi wybranymi zmianami.
Poniższe kroki opisują, jak w pełni zapewnić obsługę Androida 11.
Pobieranie pakietu SDK, zmiana kierowania i tworzenie nowych interfejsów API
Aby zacząć korzystać z pełnej obsługi Androida 11, najpierw pobierz pakiet SDK do Androida 11 (i wszelkie inne potrzebne narzędzia) do Android Studio.
Następnie zmień targetSdkVersion
i compileSdkVersion
aplikacji na "30"
i ponownie skompiluj aplikację. Szczegółowe informacje znajdziesz w przewodniku konfiguracji.
Testowanie aplikacji na Androida 11
Gdy skompilujesz aplikację i zainstalujesz ją na urządzeniu z Androidem 11, rozpocznij testy, aby sprawdzić, czy aplikacja działa prawidłowo, gdy jest kierowana na ten system. Niektóre zmiany w działaniu mają zastosowanie tylko wtedy, gdy aplikacja jest kierowana na nową platformę, dlatego warto przejrzeć te zmiany, zanim zaczniesz.
Tak jak w przypadku podstawowego testowania zgodności, przejdź przez wszystkie przepływy i funkcje, szukając błędów. Skup się na testowaniu zmian w działaniu aplikacji kierowanych na Androida 11. Pamiętaj w szczególności o zapoznaniu się ze zmianami dotyczącymi prywatności i przetestowaniu wprowadzanych przez siebie poprawek. To również dobry moment na sprawdzenie, czy aplikacja jest zgodna z podstawowymi wskazówkami dotyczącymi jakości aplikacji i sprawdzonymi metodami testowania.
Przejrzyj i przetestuj pod kątem ograniczonych interfejsów spoza SDK, które mogą mieć zastosowanie. Zwróć uwagę na ostrzeżenia logcat, które wyróżniają te przypadki dostępu, i użyj metody StrictMode detectNonSdkApiUsage()
do ich automatycznego wychwytywania.
Pamiętaj też, aby w pełni przetestować biblioteki i pakiety SDK w swojej aplikacji, aby mieć pewność, że działają one zgodnie z oczekiwaniami na Androidzie 11, oraz postępować zgodnie ze sprawdzonymi metodami dotyczącymi ochrony prywatności, wydajności, wygody użytkowania, obsługi danych i uprawnień. Jeśli napotkasz problem, spróbuj zaktualizować pakiet SDK do najnowszej wersji lub poproś o pomoc jego dewelopera.
Testowanie za pomocą przełączników zgodności aplikacji
Android 11 wprowadza nową funkcję dla deweloperów, która ułatwia testowanie aplikacji przez ukierunkowane zmiany w działaniu. W przypadku aplikacji z możliwością debugowania możesz to zrobić za pomocą przełączników:
- Przetestuj docelowe zmiany bez zmiany wartości targetSdkVersion w aplikacji. Za pomocą przełączników możesz wymusić włączenie określonych docelowych zmian działania i ocenić ich wpływ na istniejącą aplikację.
- Skup się na testowaniu tylko konkretnych zmian. Zamiast wprowadzać wszystkie docelowe zmiany jednocześnie, przełączniki pozwalają wyłączyć wszystkie docelowe zmiany z wyjątkiem tych, które chcesz przetestować.
- Zarządzanie przełącznikami w narzędziu adb Za pomocą poleceń adb możesz włączać i wyłączać przełączane zmiany w automatycznym środowisku testowym.
- Szybsze debugowanie przy użyciu standardowych identyfikatorów zmian Każda z możliwością przełączania zmian ma unikalny identyfikator i nazwę, których możesz użyć do szybkiego debugowania głównej przyczyny w danych wyjściowych logu.
Podczas przygotowań do zmiany kierowania aplikacji lub w trakcie opracowywania obsługi Androida 11 użyj przełączników. Więcej informacji znajdziesz w odpowiedniej dokumentacji.