Вроде можно явно задать срезание неиспользуемого через shrinkResources true и сделать неменянмыми пакеты, классы, поля через minifyEnabled false. В чем отличие тогда? Я область приложения не вполне понимаю
как пример - есть у вас в зависимостях kotlin stdlib. в проекте используется оттуда минимум, вы выкладываете debug apk. вот тут всё идеально для примера выше