2017-01-26 3 views
1

Недавно я исправил ошибку в моем коде, связанную с последней версией поддержки lib, 25.1.0. Тем не менее, есть кое-что, что я хочу задать в отношении отладки этой проблемы. Учитывайте это. Когда я откатываюсь от предыдущей версии моего кода, все работает так, как ожидалось. Затем, когда я обновляю этот старый код версии приложения до последней библиотеки поддержки, он разбивается так же, как и в моем последнем коде приложения (как и ожидалось). Теперь, когда я снова проверяю свой последний код приложения и делаю наоборот, понижаю поддержку lib до 25.0.1 и запускаю его, он все еще сломан. По умолчанию кешируется ли система lib?Поддержка библиотеки Android Cached?

+1

Вы синхронизировали свои файлы градиента? Пренебрежение этим объясняло бы последний случай – fractalwrench

+0

Да, я вынужден синхронизировать, когда сделано изменение для build.gradle. В этом случае при откате поддержки lib до 25.0.1 в мой последний код. – worked

ответ

1

Возможно, что одна из зависимостей вашего приложения требует версии поддерживаемых инструментов. Вы можете просмотреть список зависимостей в командной строке с помощью Gradle (w) - обычно:

./gradlew :<app>:dependencies --configuration <your configuration here> 

< где конфигурация здесь > это что-то вроде compileDebug и т.д.

На графике покажет вам, какие версии каждой зависимости, которые вы явно вызывали, и транзитивные зависимости этой библиотеки.

Существует вероятность того, что один из них переопределит ваше изменение до 25.0.1, потому что для этого требуется 25.1.0. И поскольку библиотека поддержки считается «обратной совместимостью», при компиляции не возникает никаких красных флагов.

0

Все библиотеки Maven/Gradle загружаются на диск один раз, если это то, о чем вы просите. Ничего не кэшируется между прогонами, если вы правильно очищаете проект и редактируете свои скомпилированные библиотеки.

Смежные вопросы