Interfejs i treści dla miliardów użytkowników

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:

Dalsze tematy

Posty na blogu