Zadbaj o to, aby aplikacja miała interaktywny interfejs, który szybko reaguje na działania użytkownika, a w razie potrzeby kompensuje powolne uruchamianie. Zadbaj o to, aby aplikacja była łatwa do zlokalizowania, uwzględniając różnice między językami: pozostaw miejsce na odstępy, gęstość, kolejność, akcenty i różnice w słowach. Sprawdź też, czy data, godzina i inne jednostki są dostosowane do ustawień telefonu i wyświetlane zgodnie z nimi.
Szybki i sprawny interfejs
Postrzeganie wydajności aplikacji przez użytkownika zależy w dużej mierze od jej szybkości reakcji. Na przykład interakcja z użytkownikiem i wyraźny wyświetlacz to 2 ważne cechy wydajnej aplikacji. Tutaj znajdziesz wskazówki, jak zoptymalizować te i inne aspekty szybkości i reaktywności aplikacji.
Reakcje na dotyk wszystkich elementów, których można dotknąć
- Odpowiedź dotykowa sprawia, że interfejs użytkownika jest bardziej wyczuwalny. Zadbaj o to, aby aplikacja zapewniała reakcję na dotyk w przypadku wszystkich elementów, których można dotknąć, aby jak najbardziej ograniczyć odczuwalne opóźnienie.
- Interakcja z reakcją zachęca do dokładniejszego poznania aplikacji, ponieważ tworzy odpowiednie, logiczne i przyjemne reakcje ekranu na działania użytkownika. Interaktywność sprawia, że aplikacja przestaje być tylko usługą dostarczającą informacje, a staje się platformą, która komunikuje się z użytkownikiem za pomocą różnych reakcji wizualnych i dotykowych.
- Więcej informacji znajdziesz w szkoleniu na temat Androida Dostosowywanie reakcji na dotyk.
Interfejs użytkownika powinien być zawsze interaktywny
- Aplikacje, które nie reagują podczas wykonywania działań w tle, działają wolno i obniżają zadowolenie użytkowników. Zadbaj o to, aby interfejs aplikacji zawsze reagował na działania użytkownika, niezależnie od aktywności w tle. Możesz to osiągnąć, wykonując operacje sieciowe lub inne wymagające operacje w wątku w tle. Wątek interfejsu użytkownika powinien być jak najmniej obciążony.
- Aplikacje Material Design używają minimalnych zmian wizualnych podczas wczytywania treści, przedstawiając każdą operację za pomocą jednego wskaźnika aktywności. Unikaj blokowania okien za pomocą wskaźników wczytywania.
- Puste stany występują, gdy widok nie ma treści do wyświetlenia. Może to być lista, która nie zawiera żadnych elementów, lub wyszukiwanie, które nie zwraca żadnych wyników. Unikaj pustych stanów, korzystając z treści wprowadzających, edukacyjnych lub najlepiej dopasowanych. Jeśli te opcje nie mają zastosowania, wyświetl nieinteraktywny obraz i tekstowy slogan, który informuje użytkownika, co zobaczy, gdy będzie coś do wyświetlenia.
- Więcej informacji znajdziesz w szkoleniu na temat Androida Utrzymywanie responsywności aplikacji.
Docelowa liczba klatek na sekundę na tanich urządzeniach to 60.
- Zadbaj o to, aby aplikacja zawsze działała szybko i płynnie, nawet na tanich urządzeniach.
- Nadmierne rysowanie może znacznie spowolnić działanie aplikacji. Występuje ono, gdy piksele są rysowane więcej niż raz w jednym przebiegu. Przykładem może być obraz z przyciskiem umieszczonym na wierzchu. Chociaż pewne przekroczenie limitu jest nieuniknione, należy je zminimalizować, aby zapewnić płynną liczbę klatek na sekundę. Przeprowadź debugowanie przerysowań GPU w aplikacji, aby je zminimalizować.
- Urządzenia z Androidem odświeżają ekran z częstotliwością 60 klatek na sekundę, co oznacza, że aplikacja musi aktualizować ekran w ciągu około 16 milisekund. Profiluj aplikację za pomocą narzędzi na urządzeniu, aby sprawdzić, czy i kiedy nie spełnia ona średniej 16 ms.
- ograniczyć lub usunąć animacje na tanich urządzeniach, aby zmniejszyć obciążenie procesora i karty graficznej urządzenia; Więcej informacji znajdziesz w artykule Poprawianie skuteczności układu.
- Efektywna hierarchia widoków może przyspieszyć działanie aplikacji bez zwiększania jej zużycia pamięci. Więcej informacji znajdziesz w sekcjach Skuteczność i Wyświetlanie hierarchii.
Używanie ekranu uruchamiania w przypadku aplikacji, które wolno się uruchamiają
- Ekran uruchamiania to pierwszy kontakt użytkownika z aplikacją. Wyświetlanie pustego obszaru podczas uruchamiania aplikacji zwiększa postrzeganie czasu wczytywania, dlatego warto użyć zastępczego interfejsu lub ekranu uruchamiania z logo, aby skrócić postrzegany czas wczytywania.
- Interfejs zastępczy to najbardziej płynne przejście podczas uruchamiania, odpowiednie zarówno w przypadku uruchamiania aplikacji, jak i przejść między aktywnościami w aplikacji.
- Ekrany startowe z elementami marki zapewniają chwilową ekspozycję marki, dzięki czemu interfejs może skupić się na treści.
- Najlepszym sposobem na radzenie sobie z wolnym uruchamianiem jest jego unikanie. Wydajność podczas uruchamiania zawiera informacje, które mogą pomóc w skróceniu czasu uruchamiania aplikacji.
Sprawdzone metody dotyczące interfejsu
- Material Design to język wizualny, który łączy klasyczne zasady dobrego projektu z innowacjami oraz możliwościami zapewnianymi przez technologię i naukę. Material Design to pojedynczy spójny system, który zapewnia jednorodny wygląd na różnych platformach i rozmiarach urządzeń. Używaj kluczowych komponentów Material Design, aby użytkownicy intuicyjnie wiedzieli, jak korzystać z aplikacji.
- Gotowe komponenty Material Design są dostępne w bibliotece pomocy Material Design. Te komponenty są obsługiwane na Androidzie 2.1 (poziom interfejsu API 7) i nowszych wersjach.
Lokalizacja
- Twoi użytkownicy mogą pochodzić z dowolnego miejsca na świecie, a ich język ojczysty może być inny niż Twój. Jeśli nie zaprezentujesz aplikacji w języku, który Twoi użytkownicy mogą przeczytać, stracisz szansę na ich pozyskanie. Dlatego warto zlokalizować aplikację na najważniejsze języki regionalne.
- Więcej informacji znajdziesz w szkoleniu na temat Androida Obsługa różnych języków oraz na liście kontrolnej lokalizacji.
- Od Androida 7.0 (interfejs API na poziomie 24) platforma Android udostępnia podzbiór interfejsów API ICU4J, które mogą pomóc w lokalizowaniu aplikacji na wiele języków. Więcej informacji znajdziesz w artykule ICU4J Android Framework APIs.
Dodatkowe materiały
Więcej informacji na ten temat znajdziesz w tych materiałach: