Подтвердить что ты не робот

Невозможно увидеть значение параметра в Android Studio, когда точка останова находится в первой строке метода

Я просто переключаюсь с Eclipse на Android Studio и обнаружил это странное поведение. Когда я добавляю точку останова в первой строке метода, я не вижу значения параметров. Единственное, что я могу видеть, это ссылка this. Я либо должен сделать один шаг отладки, либо установить точку останова на строку после первого, чтобы увидеть значения параметров.

У кого-нибудь еще есть эта проблема или знает, что здесь происходит?

4b9b3361

Ответ 1

Решение, предлагаемое Google здесь, заключается в обновлении плагина Android Studio Gradle до версии 1.0.1

Ответ 2

Попробуйте отключить покрытие теста jacoco для сборки отладки в файле build.gradle:

debug {
    ...
    testCoverageEnabled false
}

Это полностью исправило проблему для меня, когда обновление плагина gradle не выполнялось.

Ответ 3

Хорошее решение до тех пор, пока AOSP Issue # 123771 не будет разрешено использовать фрагмент, предоставленный Стюарт в разделе комментариев:

buildTypes {
    debug {
        [...]
        testCoverageEnabled true
    }
    release {
        [...]
    }
    debuggable.initWith(buildTypes.debug)
    debuggable {
        testCoverageEnabled false
    }
}

Таким образом, вы можете хранить отчеты о тестировании в своей сборке отладки и иметь способ переходить через код, видя ваши локальные переменные.

Ответ 4

У меня нет в файле gradle:

debug {
    ...
    testCoverageEnabled true
}

но имела ту же проблему на Android Studio 2.2. Решение, которое помогло мне решить проблему:

  • Отключить мгновенный запуск в настройках IDEA.
  • Проект повторной сборки.
  • Включить мгновенный запуск.

Ответ 5

Если ваша сборка использует jack toolchain, это может стать источником проблемы. В моем случае, отключение гнезда решает проблему:

buildTypes {
...
    debug {
        jackOptions {
            enabled false
        }
    }
}

Примечание. Для совместимости с исходным кодом 1.8 требуется гнездо!

Ответ 6

Мне было больно переключать testCoverageEnabled, когда я хотел отлаживать, поэтому настроил свойство проекта, чтобы отключить его при запуске из Android Studio, но по умолчанию он включен при запуске из командной строки без таких параметров, как в окне сборки.

// Default to true, set -PtestCoverageEnabled=false in IDE compiler command-line options
def isTestCoverageEnabled = { ->
    def enabled = project.hasProperty('testCoverageEnabled') ? testCoverageEnabled.toBoolean() : true
    println "testCoverageEnabled = " + (enabled ? "true" : "false")
    return enabled
}

android {
    buildTypes {
        debug {
            testCoverageEnabled isTestCoverageEnabled()
        }
    }
}

Чтобы установить свойство в среде IDE, добавьте параметр командной строки -PtestCoverageEnabled=false

Android Studio → Настройки → Сборка, выполнение, развертывание → Компилятор → Параметры командной строки