Ogólna jakość aplikacji

Ostatnia aktualizacja: 17 maja 2021 r.

Przydatny sposób na ocenę skuteczności aplikacji to spacer w obrębie przepływów pracy w aplikacji i ocenić płynność i bezpieczeństwo aplikacji.

Ta lista kontrolna określa zestaw podstawowych kryteriów jakości i powiązanych z nimi testów, które pomogą Ci ocenić jakości aplikacji. Niektóre kryteria łatwo przeoczyć, a dzięki testom łatwiej je zapamiętać , aby uwzględnić je w swoich planach testów.

Lista kontrolna wskazuje minimalną jakość, jaką powinny spełniać wszystkie aplikacje. Testy najprawdopodobniej wykraczają daleko poza to, co tu opisano.

Każdy element na liście kontrolnej jakości ma unikalny identyfikator, który może się przydać komunikacji z zespołem. Możesz również wyświetlić poprzednią wersję tych wytycznych.

Wrażenia wizualne

Aplikacja powinna mieć standardowy wygląd interfejsu dla Androida i wzorców interakcji w razie potrzeby, aby zapewnić spójność i intuicyjność użytkowników.

Obszar ID Testy Opis
Nawigacja VX-N1 CR-3, Aplikacja obsługuje standardową nawigację przy użyciu przycisku Wstecz i nie używa żadnego niestandardowego przycisku „Wstecz” na ekranie. prompty.
VX-N2 CR-3, Aplikacja obsługuje nawigację przy użyciu gestów, które umożliwiają powrót do ekranu głównego.
VX-N3 CR-1
CR-3
CR-5

Aplikacja prawidłowo zachowuje i przywraca stan użytkownika lub aplikacji.

Aplikacja zachowuje stan użytkownika lub aplikacji po wyjściu z pierwszego planu i zapobiega przypadkowej utracie danych z powodu przejścia wstecz oraz innych zmian stanu.

Po powrocie na pierwszy plan aplikacja powinna przywrócić zachowany stan oraz wszystkie ważne, oczekujące transakcje stanowe. Przykłady: zmiany w polach do edycji, postępy w grze, menu, filmy i inne sekcje aplikacji lub gry.

  1. Po wznowieniu działania aplikacji za pomocą przełącznika Ostatnie aplikacje powraca ona do dokładnego stanu, w którym była ostatnio używana.
  2. Gdy aplikacja zostanie wznowiona po wybudzeniu urządzenia ze stanu uśpienia (zablokowanego), aplikacja powraca do dokładnego stanu, w którym była ostatnio używana.
  3. Po ponownym uruchomieniu z poziomu ekranu głównego lub wszystkich aplikacji powinna wykonać jedną z tych czynności, w zależności od tego, ile czasu upłynęło od ostatniego użycia:
    • Jeśli aplikacja była ostatnio używana krótko temu (w minutach), przywróć jej stan jak najbardziej do poprzedniego stanu.
    • Jeśli od ostatniego użycia aplikacji upłynęło więcej czasu, spróbuj przywrócić aplikację jak najbliżej poprzedniego stanu. lub uruchomić ją z ekranu głównego lub innego domyślnego stanu.
Powiadomienia VX-S1 CR-9

Powiadomienia są zgodne ze wskazówkami dotyczącymi wyglądu. W szczególności:

  1. Powiadomienia nie służą do wzajemnej promocji ani reklamowania innego produktu, ponieważ w Sklepie Play jest to surowo zabronione.
  2. Kanały powiadomień są definiowane zgodnie ze sprawdzonymi metodami i nie obejmują wszystkich powiadomień z jednego kanału.
  3. wybierając właściwy priorytet powiadomień,
  4. Jeśli to możliwe, wiele powiadomień zostanie połączonych w jedną grupę powiadomień.
  5. W razie potrzeby ustawiaj czasy oczekiwania na powiadomienia.
  6. Powiadomienia są trwałe tylko wtedy, gdy są związane z trwającymi zdarzeniami, takimi jak odtwarzanie muzyki czy połączenie telefoniczne. Więcej informacji: Sekcja dotycząca funkcji.
VX-S2 CR-9

W przypadku komunikatorów, aplikacji społecznościowych i rozmów:

  1. używać powiadomień MessagingStyle dotyczących rozmów;
  2. Obsługuj bezpośrednią odpowiedź.
  3. Obsługa skrótów do rozmowy i stosowanie sprawdzonych metod uzyskiwania najlepszego rankingu bezpośredniego udostępniania.
  4. Wspieraj bąbelki.
Interfejs użytkownika i grafika VX-U1, CR-5,

Aplikacja obsługuje orientację poziomą i pionową oraz urządzenie złożone i rozłożone. stanów.

Orientacje i stany po przewinięciu pokazują zasadniczo te same funkcje i działania i funkcjonalności.

VX-U2, CR-5,

Aplikacja wypełnia okno aplikacji w obu orientacjach i nie ma czarnych pasów z powodu zmiany w konfiguracji, w tym dotyczące składania i otwierania urządzenia.

Dopuszczalne są drobne czarne paski, które kompensują niewielkie różnice w geometrii ekranu.

VX-U3 CR-5, Aplikacja prawidłowo obsługuje szybkie przejścia między orientacjami wyświetlacza i złożeniem urządzenia bez problemów z renderowaniem i otwieraniu strony bez utraty stanu.
Jakość obrazu VX-V1 CR-all

Aplikacja wyświetla grafikę, tekst, obrazy i inne elementy interfejsu bez widocznych zniekształceń, rozmycia lub pikseli.

  1. W miarę możliwości aplikacja powinna korzystać z elementów rysowalnych wektorowo.
  2. Aplikacja zapewnia wysokiej jakości grafikę na wszystkie docelowe rozmiary ekranu i formaty.
  3. Nie są widoczne żadne aliasy na krawędziach menu, przycisków ani innych elementów interfejsu.
VX-V2 CR-all

Aplikacja wyświetla tekst i bloki tekstu w sposób odpowiedni do każdego z języków obsługiwanych w aplikacji.

  1. Skład jest akceptowalny we wszystkich obsługiwanych formatach.
  2. Nie są widoczne żadne obcięte litery ani słowa.
  3. Przyciski lub ikony nie zawierają niewłaściwie zawijanych słów.
  4. Zachowaj wystarczające odstępy między tekstem a otaczającymi elementami.
VX-V3 CR-all Treści w aplikacji i wszystkie treści z internetu, do których się ona odwołuje, obsługują ciemny motyw.
Ułatwienia dostępu VX-A1 CR-all

Docelowe elementy dotykowe powinny mieć rozmiar co najmniej 48 dp. Więcej informacji

VX-A2 CR-all

Tekst w aplikacji i zawartość na pierwszym planie powinny utrzymać wystarczająco wysoki współczynnik kontrastu kolorów z tłem:

  • 3.0:1 – duży tekst / grafika
  • 4, 5:1 dla małego tekstu (tekst mniejszy niż 18 punktów lub jeśli tekst jest pogrubiony i mniejszy niż 14 punktów)

Dowiedz się więcej o kolorach i kontraście.

VX-A3 CR-all opisywać każdy element interfejsu, z wyjątkiem TextView, używając contentDescription.

Funkcjonalność

Aplikacja powinna wdrożyć oczekiwane działanie.

Obszar ID Testy Opis
Audio FN-A1 CR-1
CR-8
Dźwięk jest wznawiany, gdy aplikacja wróci na pierwszy plan lub że odtwarzanie jest wstrzymane.
FN-A2 CR-1
CR-2
CR-8
Jeśli odtwarzanie dźwięku jest główną funkcją, aplikacja powinna obsługiwać odtwarzanie w tle.
FN-A3 CR-0,

Gdy użytkownik rozpocznie odtwarzanie dźwięku, aplikacja powinna w ciągu jednej sekundy wykonać jedną z tych czynności:

  1. Zacznij odtwarzać dźwięk.
  2. Udostępnij wizualny wskaźnik, że dane dźwiękowe są przygotowywane.
FN-A4 CR-0, Aplikacja powinna żądać fokusu audio, gdy rozpocznie się odtwarzanie dźwięku, i powstrzymać odtwarzanie dźwięku po zatrzymaniu.
FN-A5 CR-0, Aplikacja powinna obsługować żądania innych aplikacji dotyczące aktywności audio. Na przykład aplikacja może zmniejszyć głośność odtwarzania, gdy inna aplikacja odtwarza mowę.
Multimedia FN-M1 CR-0
CR-6
CR-8
Jeśli aplikacja odtwarza dźwięk w tle, musi utworzyć powiadomienie o stylu MediaStyle.
FN-M2 CR-0, Jeśli aplikacja odtwarza filmy, powinna obsługiwać odtwarzanie obraz w obrazie.
FN-M3 CR-0, Jeśli aplikacja koduje wideo, powinna to zrobić przy użyciu standardu kompresji HEVC.
Udostępnianie FN-S1 CR-0, Do udostępniania treści aplikacja powinna używać arkusza udostępniania na Androida. Może zasugerować cele, które są niedostępne dla rozwiązań niestandardowych.
Usługa w tle FN-B1, CR-6, Aplikacja zapobiega uruchamianiu niepotrzebnie długich usług w tle. Aby zapewnić płynne działanie urządzenia użytkownika, system stosuje różne ograniczenia dotyczące usług w tle. To nie jest uważane za prawidłowe wykorzystanie usług w tle:
  • Utrzymywanie połączenia sieciowego na potrzeby powiadomień
  • Utrzymywanie połączenia Bluetooth
  • Pozostawienie włączonego systemu GPS

Dowiedz się, jak wybrać odpowiednie rozwiązanie do swojej pracy.

Wydajność i stabilność

Aplikacja powinna zapewniać wydajność, stabilność, zgodność czas reakcji użytkownika.

Obszar ID Testy Opis
Stabilność PS-S1, CR-all
SD-1
aplikacja nie ulega awariom lub zablokuj wątek UI powodujący błąd ANR (Android Not „Odpowiadanie”). Wykorzystaj Google Raport przed opublikowaniem w Google Play, który pozwala zidentyfikować potencjalne problemy ze stabilnością. Po wdrożeniu zapłać znajdziesz na stronie Android Vitals w Konsola Play.
Wydajność PS-P1, CR-all
SD-1
Aplikacja wczytuje się szybko lub wyświetla użytkownikowi informacje na ekranie (wskaźnik postępu lub podobny), jeśli wczytuje się dłużej niż 2 sekundy.
PS-P2, CR-all
SD-1
Aplikacje powinny renderować klatki co 16 ms, aby uzyskać 60 klatek na sekundę. Podczas testowania deweloperzy mogą użyć opcji Renderowanie interfejsu użytkownika profilu. W razie problemów możesz skorzystać z narzędzi, które pomogą Ci zdiagnozować powolne renderowanie.
PS-P3, PM-1 Po włączeniu StrictMode (patrz StrictMode Testing poniżej) podczas testowania aplikacji nie są widoczne żadne błyski na czerwono (ostrzeżenia dotyczące wydajności z StrictMode). Wszelkie błyski na czerwono oznaczają błędy w działaniu pamięci, dostępu do sieci lub wycieków pamięci.
Pakiet SDK PS-T1, CR-0, Aplikacja działa na najnowszej publicznej wersji platformy Androida, bez awarii ani poważnego wpływu na działanie głównej funkcji.
PS-T2, SP-1, Aplikacja jest kierowana na najnowszy pakiet SDK do Androida, który jest niezbędny do zapewnienia zgodności z wymaganiami Google Play. Aby to zrobić, ustaw wartość targetSdk.
PS-T3, SP-1, Aplikacja wykorzystuje najnowszy pakiet SDK do Androida przez ustawienie wartości compileSdk.
PS-T4, SP-2
SP-3,
Wszystkie używane pakiety SDK Google i innych firm są aktualne. Wszelkie ulepszenia tych pakietów SDK, takie jak stabilność, zgodność czy bezpieczeństwo, powinny być dostępne dla użytkowników bez zbędnej zwłoki.

W przypadku pakietów SDK Google rozważ korzystanie z pakietów SDK z Usługami Google Play (jeśli są dostępne). Te pakiety SDK są zgodne wstecznie, otrzymują automatyczne aktualizacje, zmniejszają rozmiar pakietu aplikacji i wydajnie wykorzystują zasoby zapisane na urządzeniu.

Deweloper odpowiada za całą bazę kodu aplikacji, w tym za wszelkie używane pakiety SDK innych firm.

PS-T5, SP-3, Aplikacja nie korzysta z interfejsów innych niż SDK.
PS-T6, SP-2, Wersja produkcyjna aplikacji nie zawiera bibliotek debugowania. Może to spowodować problemy z wydajnością oraz bezpieczeństwem.
Bateria PS-B1, BA-1 Aplikacja prawidłowo obsługuje funkcje zarządzania energią wprowadzone w Androidzie 6.0 (uśpienie i tryb czuwania aplikacji). Jeśli działanie głównej funkcji jest zakłócone przez zarządzanie energią, tylko kwalifikujące się aplikacje mogą poprosić o zwolnienie z połączenia. Zobacz Pomoc do innych przypadków użycia w funkcjach Uśpienie i Czuwanie aplikacji.

W trakcie programowania deweloperzy mogą przetestować działanie aplikacji w trybie gotowości i uśpienia za pomocą tych poleceń ADB.

Jeśli chodzi o wykorzystanie baterii, deweloperzy mogą korzystać z narzędzia do profilowania energii Android Studio lub narzędzia Battery Historyn, w połączeniu z planowanymi pracą w tle, aby zdiagnozować nieoczekiwane wykorzystanie baterii.

Prywatność i bezpieczeństwo

Aplikacja powinna bezpiecznie przetwarzać dane użytkownika i dane osobowe, z odpowiednim poziomem uprawnień.

Oprócz tej listy kontrolnej aplikacje opublikowane w Google Play Sklep musi być też zgodny z danymi użytkownika zasady ochrony prywatności użytkowników prywatności.

Obszar ID Testy Opis
Uprawnienia SC-P1 SC-4 Aplikacja wymaga jedynie absolutnej minimalnej liczby uprawnień, która jest jej niezbędna do obsługi danego przypadku użycia. W przypadku niektórych uprawnień, na przykład lokalizacji, używaj w miarę możliwości przybliżonej lokalizacji zamiast dokładnej.
SC-P2

Aplikacja prosi o dostęp do danych wrażliwych (takich jak SMS, rejestr połączeń lub Lokalizacja) lub usług płatnych (np. Telefon czy SMS-y) tylko wtedy, gdy są bezpośrednio związane z usługami podstawowymi przypadków użycia aplikacji. O konsekwencjach związanych z tymi uprawnieniami należy wyraźnie poinformować użytkownika.

W zależności od sposobu korzystania z uprawnień może być sposób alternatywny do realizowania zastosowań aplikacji bez dostępu do informacji poufnych. Na przykład zamiast lub prosi o uprawnienia związane z kontaktami użytkownika, lepiej poprosić o dostęp za pomocą intencji niejawnych.

SC–P3 CR-0, Aplikacja prosi o uprawnienia w czasie działania w kontekście, gdy prosi o funkcję, a nie od razu podczas jej uruchamiania.
SC–P4 CR-0,

Aplikacja w jasny sposób informuje, dlaczego wymagane są określone uprawnienia lub dlaczego aplikacja wykonuje zalecany proces, wyjaśnić, dlaczego potrzebuje uprawnień.

SC–P5 CR-0, Aplikacja powinna stopniowo pogorszyć się, gdy: użytkownicy odmawiają ich przyznania lub je anulują. Aplikacja nie powinna całkowicie blokować użytkownikowi dostępu do aplikacji.
Dane i Pliki SC-DF1 SC-1 Wszystkie dane wrażliwe są przechowywane w pamięci wewnętrznej aplikacji.
SC-DF2 SC-10 Żadne dane osobowe ani poufne użytkownika nie są rejestrowane w dzienniku systemowym ani dzienniku dotyczącym aplikacji.
SC-DF3 Aplikacja nie używa w celu identyfikacji żadnych niemożliwych do zresetowania identyfikatorów sprzętu, takich jak IMEI.
Tożsamość SC-ID1 CR-0, Aplikacja wyświetla wskazówki dotyczące autouzupełniania danych logowania do konta i innych informacji poufnych, takich jak dane karty kredytowej, adres pocztowy i numer telefonu.
SC-ID2, CR-0, Zintegruj Credential Managera na Androida dla: bezproblemowe logowanie, które ujednolica obsługę kluczy dostępu, tożsamości sfederowanej tradycyjnych haseł.
SC-ID3, CR-0, Aplikacja obsługuje uwierzytelnianie biometryczne, aby chronić transakcje finansowe i informacje poufne, takie jak ważne dokumenty użytkownika.
Komponenty aplikacji SC-AC1 SC-5

Aplikacja bezpośrednio ustawia atrybut android:exported w przypadku wszystkich aktywności, usług, odbiorców transmisji,a zwłaszcza dostawców treści.

Eksportowane są tylko te komponenty aplikacji, które udostępniają dane innym aplikacjom, oraz te, które powinny być wywoływane przez inne aplikacje.

SC-AC2 CR-0
SC-4

Wszystkie intencje i transmisje są zgodne ze sprawdzonymi metodami:

  1. Używaj intencji jawnych, jeśli aplikacja docelowa jest dobrze zdefiniowana.
  2. Użyj intencji, aby odroczyć uprawnienia do innej aplikacji, która ma już odpowiednie uprawnienia.
  3. Bezpieczne udostępnianie danych między aplikacjami
  4. Intencje zawierające ładunek są weryfikowane przed użyciem.
  5. Jeśli musisz przekazać intencję do innej aplikacji, tak aby aplikacja odbierająca mogła wywoływać i oczekiwać wywołania zwrotnego w aplikacji wywołującej, nie umieszczaj w treściach dodatkowych intencji zagnieżdżonej. Użyj intencji PendingIntent.
  6. W razie potrzeby podczas konfigurowania intencji PendingIntents ustaw flagę trwałą.
SC-AC3 SC-3 Wszystkie komponenty, które udostępniają treści między aplikacjami, korzystają z uprawnień niestandardowych android:protectionLevel="signature". Dotyczą one aktywności, usług, odbiorców transmisji, a zwłaszcza dostawców treści.

Aplikacje nie powinny korzystać z dostępu do listy zainstalowanych pakietów. Dostęp był ograniczony w Androidzie 11.

Sieć SC-N1 SC-9 Cały ruch w sieci jest wysyłany przez SSL.
SC-N2 SC-6 Aplikacja deklaruje konfigurację zabezpieczeń sieci.
SC-N3 Jeśli aplikacja korzysta z Usług Google Play, dostawca zabezpieczeń jest inicjowany podczas uruchamiania aplikacji.
Komponenty WebView SC-W1 SC-6 Nie używaj funkcji setAllowUniversalAccessFromFileURLs() do uzyskiwania dostępu do treści lokalnych. Zamiast niego użyj klasy WebViewAssetLoader.
SC-W2 SC-7 Komponenty WebView nie powinny używać metody addJavaScriptInterface() z niezaufanymi treściami.

W Androidzie 6.0 i nowszych używaj kanałów wiadomości HTML.

Realizacja SC-E1 Aplikacja nie dynamicznie wczytuje kodu spoza pakietu APK. Deweloperzy powinni używać pakietów Android App Bundle, które obejmują Play Feature Delivery i Play Asset Delivery.

Od sierpnia 2021 r. korzystanie z pakietów Android App Bundle jest obowiązkowe w przypadku wszystkich nowych aplikacji Sklep Play.

Kryptografia SC-C1 Aplikacja wykorzystuje skuteczne, udostępniane przez platformę algorytmy kryptograficzne i generator liczb losowych. Aplikacja nie implementuje też niestandardowych algorytmów.

Google Play

Upewnij się, że Twoje aplikacje mogą być publikowane w Google Play.

Obszar ID Testy Opis
Zasady GP-P1 GP-all Aplikacja przestrzega też warunków Polityki treści dla deweloperów w Google Play, nie oferuje nieodpowiednich treści, nie korzysta z własności intelektualnej ani marek innych osób itd.
GP-P2 GP-1. Zgodnie z wytycznymi dotyczącymi oceny treści poziom dojrzałości aplikacji jest ustawiony prawidłowo.
Strona z informacjami o aplikacji GP-D1 GP-1
GP-2

Grafika aplikacji jest zgodna ze wskazówkami tym artykule w Centrum pomocy. Sprawdź, czy:

  1. Informacje o aplikacji zawierają wysokiej jakości grafikę.
  2. Grafika nie zawiera obrazów przedstawiających urządzenie, zrzutów ekranu ani małego tekstu, które będą nieczytelne po zmniejszeniu i wyświetlone na najmniejszym ekranie, na który kierowana jest aplikacja.
  3. Grafika nie przypomina reklamy.
GP-D2 GP-1. Zrzuty ekranu i filmy z aplikacji nie pokazują ani nie nawiązują do urządzeń z systemem innym niż Android.
GP-D3 GP-1. Zrzuty ekranu lub filmy z aplikacji nie przedstawiają jej zawartości ani sposobu korzystania z niej w sposób mylący.
Pomoc dla użytkowników GP-X1, GP-1. Typowe błędy zgłaszane przez użytkowników na karcie Opinie na stronie Google Play są usuwane, jeśli można je odtworzyć i występują na wielu różnych urządzeniach. Jeśli błąd występuje tylko na kilku urządzeniach, warto go naprawić, jeśli są one szczególnie popularne lub nowe.

Konfigurowanie środowiska testowego

Do skonfigurowania środowiska testowego dla tej listy kontrolnej zalecamy następujące działania:

  • Skupienie się na testowaniu emulatora – Emulator Androida to świetny sposób na przetestowanie aplikacji w różnych wersjach Androida i rozdzielczości ekranu. Musisz skonfigurować emulowane urządzenia (AVD), aby reprezentowały najpopularniejsze kombinacje sprzętu i oprogramowania w grupie docelowych użytkowników. Oprócz testów na telefony zalecamy też przetestowanie innych formatów przy użyciu tych emulatorów co najmniej:
    • Urządzenia składane – składany system o przekątnej 7,6 cala i zewnętrzny wyświetlacz (znajdziesz go na liście telefonów w AVD Manager).
    • Tablet – Pixel C 9,94 cala (2560 x 1800 pikseli).
    • Aby przetestować powiadomienia z aplikacji mobilnej, sparuj urządzenie mobilne / emulator z emulatorem Wear OS – Wear OS z wersją 1.84”.
  • Urządzenia – w środowisku testowym powinno znajdować się niewielka liczba rzeczywistych urządzeń reprezentujących główne formaty oraz ich kombinacje sprzętowe i oprogramowania, które są obecnie dostępne dla klientów. Nie musisz przeprowadzać testów na każdym urządzeniu dostępnym na rynku. Skup się na niewielkiej liczbie reprezentatywnych urządzeń nawet na 1 lub 2 urządzeniach w każdym formacie.
  • Laboratorium testowania urządzeń – możesz też korzystać z usług innych firm, np. Laboratorium Firebase, aby testować swoje aplikacje na większej liczbie różnych urządzeń.
  • Testowanie z najnowszą wersją Androida – oprócz testowania wersji Androida reprezentatywnych wśród docelowych użytkowników zawsze korzystaj z najnowszej wersji Androida (obecnie 14). Dzięki temu najnowsze zmiany w działaniu nie wpłyną negatywnie na wrażenia użytkowników.

Bardziej kompleksowe wskazówki dotyczące testowania (w tym testowania jednostkowego, integracji i interfejsu) znajdziesz w podstawach testowania Androida.

Procedury testowe

Te procedury testowe pomagają wykryć różne typy problemów z jakością w do aplikacji. Możesz łączyć testy lub integrować ich grupy w i własne plany testów. W powyższych sekcjach znajdziesz pliki referencyjne, które łączą w ramach tych procedur testowych.

Typ Test Opis
Pakiet podstawowy CR-0

Przejdź do wszystkich części aplikacji – wszystkich ekranów, okien, ustawień i wszystkich schematów użytkownika.

  1. Jeśli aplikacja umożliwia edytowanie lub tworzenie treści, granie w grę lub odtwarzanie multimediów, przetestuj te procesy.
  2. Podczas testowania aplikacji wprowadzaj zakłócenia w działaniu innych aplikacji, np. odbieranie powiadomienia lub połączenia telefoniczne. i stosować przejściowe zmiany w atrybutach urządzenia, takich jak łączność sieciowa, funkcja baterii, dostępność GPS czy obciążenie systemu.
  3. Wpisywanie i testowanie wszystkich procesów zakupu w aplikacji
CR-1 Na każdym ekranie aplikacji naciśnij klawisz ekranu głównego urządzenia lub przesuń palcem w górę w ramach nawigacji przy użyciu gestów, a następnie ponownie uruchom aplikację z ekranu Wszystkie aplikacje.
CR-2 Z każdego ekranu aplikacji przełącz się na inną działającą aplikację, a potem wróć do testowanej aplikacji, korzystając z przełącznika aplikacji Ostatnie.
CR-3 Na każdym ekranie (i w każdym oknie) naciśnij przycisk Wstecz lub użyj gestu przesuwania wstecz.
CR-5 Na każdym ekranie aplikacji obracaj urządzenie do orientacji poziomej i pionowej oraz co najmniej 3 razy po złożeniu i po złożeniu.
CR-6 Przełącz się na inną aplikację, aby wysłać aplikację testową w tle. Przejdź do Ustawień i sprawdź, czy aplikacja testowa ma jakiekolwiek usługi działające w tle. Na Androidzie 4.0 lub nowszym przejdź do ekranu Aplikacje i znajdź aplikację w sekcji „Uruchomione”. .
CR-7 Naciśnij przycisk zasilania, by uśpić urządzenie, a potem jeszcze raz naciśnij przycisk zasilania, by wybudzić ekran.
CR-8 Ustaw blokadę ekranu na urządzeniu. Naciśnij przycisk zasilania, by uśpić urządzenie (co spowoduje jego zablokowanie). Następnie jeszcze raz naciśnij przycisk zasilania, aby wybudzić ekran i odblokować urządzenie.
CR-9 W panelu powiadomień możesz włączać i obserwować wszystkie typy powiadomień, które może wyświetlać aplikacja. W razie potrzeby rozwiń powiadomienia (Android 4.1 lub nowszy) i kliknij wszystkie dostępne działania.
CR-10 Przejrzyj pomoc dotyczącą innych przypadków użycia funkcji Uśpienie i Czuwanie aplikacji.
Zainstaluj na karcie SD SD-1 Powtórz pakiet podstawowy, instalując aplikację na karcie SD urządzenia (jeśli aplikacja obsługuje tę metodę instalacji).

Aby przenieść aplikację na kartę SD, możesz użyć opcji Ustawienia > Informacje o aplikacji > Przenieś na kartę SD.

Wydajność i stabilność SP-1, Sprawdź plik manifestu Androida i konfigurację kompilacji, aby upewnić się, że aplikacja została utworzona przy użyciu najnowszego dostępnego pakietu SDK (targetSdk i compileSdk).
SP-2, Sprawdź plik build.gradle pod kątem nieaktualnych zależności.
SP-3, Możesz wykrywać użycie interfejsu innego niż SDK za pomocą narzędzia Android Studio lint. Istnieją też inne alternatywne metody testowania.
Monitorowanie wydajności PM-1 Powtórz Core Suite z włączonym profilowaniem StrictMode.

Zwróć szczególną uwagę na funkcję czyszczenia pamięci i jej wpływ na wygodę użytkowników.

Bateria BA-1 Powtórz podstawowy pakiet w cyklach Uśpienie i Czuwanie aplikacji.

Zwracaj szczególną uwagę na alarmy, minutniki, powiadomienia, synchronizacje itp. Wymagania i wytyczne znajdziesz w sekcji Testowanie z użyciem funkcji uśpienia i czuwania aplikacji.

Bezpieczeństwo SC-1 Przejrzyj wszystkie dane zapisane w pamięci zewnętrznej.
SC-2 Sprawdź, jak są przetwarzane i przetwarzane dane wczytywane z pamięci zewnętrznej.
SC-3 Sprawdź wszystkich dostawców treści zdefiniowanych w pliku manifestu Androida. Upewnij się, że każdy dostawca ma odpowiednie protectionLevel.
SC-4 Przejrzyj wszystkie wymagane uprawnienia w pliku manifestu, w czasie działania i na ekranie ustawień aplikacji (Ustawienia > Informacje o aplikacji) na urządzeniu.
SC-5 Sprawdź, czy wszystkie komponenty aplikacji zdefiniowane w pliku manifestu Androida są odpowiednie dla stanu eksportu. Wyeksportowana właściwość musi być jednoznacznie określona dla wszystkich komponentów.
SC-6 Sprawdź konfigurację zabezpieczeń sieciowych aplikacji, upewniając się, że żadne lintowania nie kończą się niepowodzeniem.
SC-7 W przypadku każdego komponentu WebView przejdź na stronę, która wymaga JavaScriptu.
SC-8 W każdym komponencie WebView spróbuj przejść do witryn i treści, które nie są wczytywane bezpośrednio przez aplikację.
SC-9 Zadeklaruj konfigurację zabezpieczeń sieci, która wyłącza ruch nieszyfrowany, a następnie przetestuj aplikację.
SC-10 Uruchom aplikację i wykonaj wszystkie jej podstawowe funkcje, obserwując dziennik urządzenia. Nie należy rejestrować żadnych prywatnych informacji o użytkowniku.
Google Play GP-1 Zaloguj się w Konsoli programisty Google Play, aby przejrzeć swój profil dewelopera, opis aplikacji, zrzuty ekranu, grafikę, ocenę treści i opinie użytkowników.
GP-2 Pobierz grafikę i zrzuty ekranu, a następnie przeskaluj je w dół, aby pasowały do rozmiarów wyświetlacza na urządzeniach i formatach, na które kierujesz reklamy.
GP-3 sprawdzać wszystkie zasoby graficzne, multimedia, tekst, biblioteki kodu i inne treści zawarte w pakiecie do pobrania aplikacji lub pliku rozszerzenia;

Testowanie za pomocą StrictMode

Aby przeprowadzić testy wydajności, zalecamy włączenie StrictMode w i używa jej do wychwytywania operacji, które mogą mieć wpływ na wydajność, dostęp do sieci, pliki odczyty/zapisy itd. Poszukaj potencjalnie problematycznych operacji zarówno w wątku głównym, jak i w kontekście w innych wątkach.

Zasadę monitorowania wątku możesz skonfigurować za pomocą: StrictMode.ThreadPolicy.Builder i włączyć wszystkie obsługiwane funkcje monitorowania ThreadPolicy korzysta z: detectAll()

Włącz wizualne powiadomienia o naruszeniach zasad w aplikacji ThreadPolicy za pomocą penaltyFlashScreen()