TGViewer
Android Broadcast Android Broadcast @android_broadcast · 14.6K subscribers
Post #8681 6.21K
Как лишние ресурсы могут повлиять на UI вашего приложения

Библиотеки от Google и других популярных SDK часто содержат строки для десятков локалей, тогда как большинство приложений поддерживают всего 7–10 наиболее востребованных языков.

Механизм выбора ресурсов в Android устроен таким образом, что система подбирает наиболее подходящий ресурс с учётом квалификаторов (например, локали). Если для конкретной локали, установленной на устройстве, в вашем проекте отсутствует соответствующий перевод, система может использовать строку из библиотеки по умолчанию. Это может привести к неожиданному отображению интерфейса.

Чтобы избежать подобных ситуаций, вы можете явно задать набор локалей, которые поддерживает ваше приложение. Тогда все ресурсы для неуказанных локалей не попадут в финальный APK, что не только снижает его размер, но и обеспечивает предсказуемость UI.

Пример настройки в build.gradle.kts (application модуль):

android {
androidResources {
// Автоматически сгенерировать список локалей на основе ресурсов проекта
// По умолчанию false
generateLocaleConfig = true

// Либо явно указать поддерживаемые локали
localeFilters.addAll(setOf("en", "ru", "es", "de"))
}
}


Ранее Android Gradle Plugin позволял фильтровать ресурсы по различным группам квалификаторов (например, плотность экрана, ориентация и т.д.), однако начиная с AGP 8.0 эта возможность объявлена устаревшей и поддерживается только фильтрация по локалям. Это связано с тем, что App Bundle эффективно разделяет ресурсы по плотности экрана, а применение других фильтров использовалось крайне редко.

#android #gradle #локализация #лучшиепрактики
  • 👍 46
  • 🔥 10
More from @android_broadcast
  1. Oct 15, 2026🤖 Android прячет логины в WebView при показе экрана и запрещает приложениям тихо включать…
  2. Oct 14, 2026#видеозаписи #МобильныйВторник Осенний Mobius — уже на следующей неделе! А сегодня мы откр…
  3. Oct 14, 2026🔐 Волна утечек в Японии: эндпоинты и ключи API достают из публичных приложений 8 октября…
  4. Oct 14, 2026🛒 Google Play: свои вайб-код приложения можно ставить на устройство без аккаунта разработ…
  5. Oct 13, 2026⭐️🤖 Gemini 4 Argon пришёл в Android-разработку Google открыл Android-разработчикам свою н…
  6. Oct 13, 2026🤖 Keep-аннотации R8 вместо ручных -keep правил: вышел AndroidX Annotation Keep Недавно пи…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →