Я хочу иметь Snackbar в приложении, поэтому я импортировал библиотеку материалов, которую раньше не использовал. При обычном isShrinkResources = true и отсутствии дополнительного кода (просто импорт библиотеки) размер APK вырос на 25%. Я попробовал режим строгого сжатия, который действительно помог, и даже некоторые общие правила удаления, но даже несмотря на следующее, я все еще мог видеть очень много неиспользуемых виджетов, таких как чипы, присутствующие в APK.
Код: Выделить всё
// app/src/main/res/raw/keep.xml
Код: Выделить всё
-keep class com.google.android.material.chip.Chip { (android.content.Context, android.util.AttributeSet); }
Код: Выделить всё
Marking attr:chipStyle:2130968776 reachable: referenced from in_memory_r8_base_classes0.dex
Marking style:Widget_MaterialComponents_Chip_Action:2131952698 reachable: referenced from in_memory_r8_base_classes0.dex
...
@myapppackage:animator/m3_chip_state_list_anim : reachable=false
@myapppackage:integer/m3_chip_anim_duration
@myapppackage:dimen/m3_chip_checked_hovered_translation_z
...
The root reachable resources are:
attr:chipStyle:2130968776
string:mtrl_chip_close_icon_content_description:2131886281
style:Widget_MaterialComponents_Chip_Action:2131952698
...
Unused resources are:
animator:m3_chip_state_list_anim:2130837518
- Почему AAPT настаивает на сохранении ресурсов? и
- Как я могу избавиться от них, индивидуально или массово?
Подробнее здесь: https://stackoverflow.com/questions/797 ... from-a-lib
Мобильная версия