tgoop.com/android_live/1001
Last Update:
ResConfigs для языков
#android #optimization
Расскажу вам лишний раз о бесплатном способе, чтобы уменьшить размер вашего apk-файла. Многие о нём знают, но я часто встречал проекты, где этой настройки не было.
Дело в том, что некоторые библиотеки содержат в себе переводы на большое количество языков: то есть одна строка может быть в 50-60 интерпретациях, каждая из которых добавляет вес вашему приложению.
Чтобы посмотреть, а как у вас дела, откройте Build -> Analyze APK
, откройте release сборку приложения и выберите resources.arsc
. В самом низу списка будет файл strings, где наглядно в виде таблички прописаны все строковые ресурсы для каждого языка.
Чтобы убрать все эти языки — используйте свойство resConfigs
в defaultConfig
, где через запятую перечислите коды языков, используемые вашим приложением. Соберите релизную сборку и вы удивитесь, как много места может сжирать набор строк.
Вариант со звёздочкой: можете сделать подобную настройку только для релизных билдов при помощи:applicationVariants.all { variant ->
if (variant.buildType.name == "release") {
variant.mergedFlavor.resourceConfigurations.addAll(
"en", "de", "es"
)
}
Только не забудьте при добавлении языка прописать их и тут