Obsługa map bitowych

Wypróbuj sposób tworzenia wiadomości
Jetpack Compose to zalecany zestaw narzędzi UI na Androida. Dowiedz się, jak wyświetlać grafikę w oknie tworzenia wiadomości.

Istnieje kilka powodów, dla których wczytywanie bitmap w aplikacji na Androida może sprawiać trudności:

  • Mapy bitowe mogą bardzo łatwo wyczerpać budżet pamięci aplikacji. Na przykład aparat w telefonie Pixel może robić zdjęcia o rozmiarze do 4048 x 3036 pikseli (12 megapikseli). Jeśli używana jest konfiguracja bitmapy, to ARGB_8888, co jest domyślnym ustawieniem na Androidzie 2.3 (poziom interfejsu API 9) i nowszym, załadowanie pojedynczego zdjęcia do pamięci zajmie około 48 MB (4048 × 3036*4 bajtów). Tak duże zapotrzebowanie na pamięć może natychmiast wykorzystać całą dostępną pamięć dla aplikacji.
  • Ładowanie bitmap w wątku UI może obniżyć wydajność aplikacji, powodując spowolnienie czasu reakcji, a nawet komunikaty ANR. Dlatego podczas pracy z mapami bitowymi ważne jest odpowiednie zarządzanie wątkami.
  • Jeśli Twoja aplikacja wczytuje wiele map bitowych do pamięci, musisz umieć zarządzać pamięcią i buforowaniem dysku. W przeciwnym razie możesz pogorszyć szybkość reagowania i płynność interfejsu użytkownika aplikacji.

W większości przypadków zalecamy korzystanie z biblioteki Glide do pobierania, dekodowania i wyświetlania map bitowych w aplikacji. Glide eliminuje większość złożoności obsługi tych i innych zadań związanych z pracą z bitmapami i innymi obrazami na Androidzie. Informacje o używaniu i pobieraniu Glide znajdziesz w repozytorium Glide na GitHubie.

Możesz też zdecydować się na bezpośrednią współpracę z interfejsami API niższego poziomu, które są wbudowane w platformę Androida. Więcej informacji na ten temat znajdziesz w artykułach na temat wydajnego wczytywania dużych map bitowych, buforowania map bitowych i zarządzania pamięcią bitmapową.

Więcej materiałów