Проблемы при оценке выражения в Android Studio - PullRequest
0 голосов
/ 27 апреля 2020

Во время отладки приложения для меня очень часто останавливаться на точке останова и оценивать выражение (например, запускать код, такой как students.filter { it.age >= 18 }). Я не только привык делать это, но у меня до сих пор не было проблем с этим.

Однако у меня возникли некоторые проблемы при попытке отфильтровать список во время отладки. Я имею в виду «несколько», потому что ошибки, с которыми я столкнулся, начали изменяться.

Сначала я застрял с сообщением Evaluating... при попытке выполнить инструкцию, которая не выполнялась. Инструкция была что-то вроде:

foo.bar.filter { it.id.toLowerCase() == "someId" }

Представьте foo как список (kotlin.collections.List) с 84 элементами, bar как объект и id как строку.

У меня также была проблема при отладке, когда при попытке проанализировать свойства переменной я застрял с сообщением Collecting data...

Я подумал, что проблема может быть в моем компьютере или мобильном телефоне ( память, процессор ...), поэтому я перезапустил их обоих, но проблема осталась. Я не думаю, что это аппаратная проблема, потому что у меня есть хороший ноутбук (i7, с 16 Гб оперативной памяти и SDD) и смартфон (Note 9). Я также изменил кабель, который я использовал, на всякий случай. Я подумал, что это может быть моя Android Studio не в актуальном состоянии (это была версия 3.5.1), поэтому я обновил ее до версии 3.6.3, но проблема также не исчезла.

Я попытался использовать эмулятор, но я начал получать следующую ошибку:

com.sun.jdi.internalexception: unexpected jdwp error: 23

И в какой-то момент я получил эту другую ошибку:

object has been collected

Я уверен, что моя проблема не связана с G C потому что, если я просто оцениваю свою переменную списка, а не пытаюсь ее отфильтровать, она работает. Это также работает, когда я пытаюсь оценить одно из его свойств (например, foo.bar).

Я разговаривал с другими android разработчиками, но единственная помощь, которую я мог получить, это "попытаться перезапустить android студия ".

...