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 funkcji Compose

Wczytywanie map bitowych w aplikacji na Androida może być trudne z kilku powodów:

  • Mapy bitowe mogą bardzo łatwo wyczerpać budżet pamięci aplikacji. Na przykład aparat w telefonie Pixel może robić zdjęcia w rozdzielczości do 4048 x 3036 pikseli (12 megapikseli). Jeśli używana jest konfiguracja bitmapy ARGB_8888, czyli domyślnie w Androidzie 2.3 (poziom interfejsu API 9) i nowszych, wczytywanie pojedynczego zdjęcia do pamięci zajmuje około 48 MB pamięci (4048 × 3036 × 4 bajty). Tak duże zapotrzebowanie na pamięć może natychmiast wykorzystać całą pamięć dostępną dla aplikacji.
  • Wczytywanie map bitowych w wątku interfejsu może pogorszyć wydajność aplikacji, powodując powolne czasy reakcji, a nawet komunikaty o błędach ANR. Dlatego tak ważne jest prawidłowe zarządzanie wątkami podczas pracy z mapami bitowymi.
  • Jeśli aplikacja wczytuje do pamięci wiele map bitowych, musisz umiejętnie zarządzać pamięcią i buforowaniem dysku. W przeciwnym razie responsywność i płynność interfejsu aplikacji mogą ulec pogorszeniu.

W większości przypadków zalecamy używanie biblioteki Glide do pobierania, dekodowania i wyświetlania bitmap w aplikacji. Glide to narzędzie, które eliminuje większość złożoności przy obsłudze tych i innych zadań związanych z pracą z mapami bitowymi 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 wbudowanymi w platformę Androida. Więcej informacji na ten temat znajdziesz w artykułach Loading Large Bitmaps Efficiently (Wydajne ładowanie dużych map bitowych), Buforowanie map bitowych i Zarządzanie pamięcią bitmap.

Więcej materiałów

Understand the internals of JPG to get the most out of this file format.

One of the interesting parts about building an Android application is all the awesome configurations of screen sizes and form factors. And if you’re a developer who prides themselves on being available on the most devices possible, then chances are

Learn about WebP, which can give you even smaller image sizes than JPEG.

Keep your JPGs lean by stripping those unnecessary bits.