Android studio пропускает точки останова

когда я пытаюсь отладить приложение с помощью Android studio, я устанавливаю некоторые точки останова в IDE, и после запуска отладчика у меня есть информация о каждой точке останова (в шаре):

Warning : No executable code found at line ...

похоже, что сообщение появляется, когда приложение достигает первого BP. Просто для ясности - у меня есть исполняемый код в этих строках, таких как String s = "asd";

8 ответов


вы отладка на устройстве или на эмуляторе? Если устройство затем попытается переключиться обратно на Dalvik из ART первая точка останова строки работает только


в моем случае проект Build-Clean действительно помог.


установите для minifyEnabled значение false:

  1. В разделе "Проект" выберите проект
  2. щелкните правой кнопкой мыши проект и выберите Открыть Настройки модуля
  3. выберите модуль, который вы используете, и из типа сборки установите Minify Enabled в false

попробуйте вставить следующий фрагмент кода в блок android{} в сборке приложения.файл gradle:

    buildTypes {
        release {
            minifyEnabled true 
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
        debug {
            minifyEnabled false //<---- THIS FIX THE PROBLEM
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'pro
guard-rules.pro'
        }

    }

отвечая на сообщение user3167086 -

У меня была такая же проблема с точками останова, не работающими в середине метода. Одна строка кода была в порядке, и значок точки останова имел "галочку" в нем, но следующая точка имела "x" в значке и давала вражду "нет исполняемого кода". Я проверил структуру проекта, и тип сборки уже по умолчанию был "false", но я снова установил его в false и нажал OK.

для тех, кто использует Android Studio 1.5, как Я, полная процедура-с помощью главного меню - это выберите Файл - > Структура Проекта. Затем выберите "App" модуль слева, а затем вкладка "типы сборки"вверху. Убедитесь, что у вас есть "Debug "выбрано, а не "отпустить" слева (вы должны увидеть это в верхней части правой колонки тоже), а затем установить Minify включен для FALSE.


убедитесь, что вы используете вариант сборки "отладка" - в противном случае точки останова не работают.


Я увидел это сообщение об ошибке во всплывающем окне над страшной точкой останова с X в нем, в "стабильной" версии Android Studio 2.1.2 (Gradle: 2.10, Android Plugin: 2.1.2), и исправление состояло в том, чтобы просто нажать красную кнопку "стоп" на текущей сессии запуска в Android Studio.
Я понятия не имею, как текущий сеанс запуска может помешать установке точки останова в источнике (у меня все под "мгновенным запуском" не отмечено), но это сработало по какой-то причине.


на будущее:

в моем случае все строк кода были недоступны для отладчика. Решение моей проблемы было отключение jack чтобы избежать создания промежуточного кода.

эти строки в my gradle.build были виноваты:

defaultConfig {
    jackOptions {
        enabled true
    }
}

Я включил опции jack несколькими месяцами ранее, а затем переключился обратно на Java7, забыв о том, как работает мое приложение. Нет suprisde Android Studio не удалось найти соответствия код.

Я надеюсь, что это поможет.