С вашего скриншота Я видел, что вы используете Android Studio
, и никаких проблем с вашим кодом нет, а некоторые настройки отладки. Если вы откроете Android Studio
предпочтений и перейдите к Build, Execution, Deployment > Debugger > Data Views
, вы, вероятно, увидите опцию Enable auto expressions in Variables view
, отмеченную галочкой, так как она отмечена по умолчанию. Это должно выглядеть примерно так:
Теперь, если вы будете проверять IntelliJ
docs для этого вы найдете (обратите внимание, что IntelliJ
и Android Studio
работают на том же движке, в случае, если вы задаетесь вопросом, почему я сказал о IntelliJ
документы):
Выберите этот параметр, если вы хотите, чтобы отладчик IntelliJ IDEA автоматически оценивал выражения и показывал соответствующие значения в области «Переменные» окна «Инструмент отладки».
Отладчик анализирует контекст вблизи точки останова (текущий оператор, одно заявление до и после него). Он делает это, чтобы найти различные выражения в исходном коде (если есть), например, myvar.myfield.
Если такие выражения не содержат явных вызовов метода, отладчик оценивает их и отображает соответствующие значения в представлении «Переменные».
В основном, они говорят, что IDE проверит код вокруг точки останова, чтобы идентифицировать переменные и вычислить их значения (вызовы методов не включены). При этом, когда элемент управления достигает строки, где объявляется accounts variable
, IDE проверит код для переменных и найдет переменную ac
, но не сможет вычислить ее значения, поскольку на момент выполнения эта переменная еще не объявлена, поэтому вся операция завершится сообщением о том, что переменная не может быть найдена.
Чтобы исправить это, вы должны снять этот параметр с настроек или оставить его таким же, как это, так как это не повлияет на ваш код (он полностью функциональен прямо сейчас).
проверить это -> http://stackoverflow.com/questions/2112965/how-to-get-the-android-devices-primary-e-mail-address –
работоспособно. –
В чем проблема с моим кодом? –