У меня есть несколько проектов библиотеки, и все они имеют зависимость от Support Library. Мое приложение имеет зависимость от этих проектов с несколькими библиотеками. Каждый проект библиотеки содержит ссылки на ресурсы библиотеки поддержки в файле R.java. Это увеличивает количество идентификаторов полей из-за избыточности.
Мое приложение получает
DexIndexOverflowException: идентификатор поля не в [0, 0xffff]: 65536
из-за этой избыточной ссылки R.java.
Из-за этого у моего приложения есть 47k методов, в то время как идентификаторы полей 65k.
Edit:
Я не буду использовать multi-dex, это не решение моей проблемы. Я хочу сбрить избыточные идентификаторы полей.
Вопрос не в том, как обойти проблему, а в том, как избавиться от избыточных идентификаторов полей. Использование multi-dex не удаляет избыточные идентификаторы полей.