Android Studio IDE: перерыв на исключение


похоже, что моя Android-студия не хочет прерываться на любом исключении по умолчанию. Позволяя прорваться на "исключения" начинается нарушение в фактической системе JDE библиотеки. Есть ли способ заставить его нарушать только исключения в моем коде?

исходя из Юниверса Visual Studio, ищем поведение по умолчанию против отладки здесь.

3 107

3 ответа:

перерыв на все исключения, пойманные или непойманные:

  1. откройте окно точки останова через Run - > View Точки Останова.
  2. появится диалоговое окно точки останова. На левой панели прокрутите вниз. Выберите исключения под Точки Останова Исключения Java
  3. С исключения выбранный, на правой панели, настроить следующим образом:
    • приостановить: проверено
    • все: некоторые
    • состояние: !(this instanceof java.lang.ClassNotFoundException)
    • уведомления: обе исключения и непойманное исключение избранные

Breakpoints dialog

  1. определите фильтры, определяющие пространства имен библиотек, которые отладчик должны перерыв: Проверьте фильтры класс флажок для включения фильтрации классов (как упоминалось @Scott Барта). Затем нажмите кнопку ... кнопка (elipsis) для открытия диалогового окна фильтры классов. Укажите шаблоны пространства имен классов, нажав на (добавить рисунок). Входить:
    • com.myapp.* (замените это префиксом пространства имен вашего приложения)
    • java.* (примечание: в соответствии с вопросом OP, оставьте это, чтобы не нарушать библиотеки Java)
    • android.* (как и выше, оставьте просто отлаживать собственный код приложения)
    • добавить любые дополнительные пространства имен по мере необходимости (например, сторонние библиотеки)

Class Filters

  1. пресс ОК, затем закройте диалоговое окно точки останова.

Если вы откроете окно точки останова, это даст вам довольно много вариантов, чтобы он условно сломался или нет. То, что вы ищете, - это "фильтры классов" здесь-вы можете указать выражение подстановочного знака, например, путь к пакету Java, и он будет прерываться только для исключений, созданных из соответствующих классов.

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

эти методы отфильтровывают типы исключений, которые среда выполнения выдает во время нормальной работы (не очень исключительные, не так ли?). Он не использует фильтр классов, так как он будет отфильтровывать слишком много; ошибки в вашем коде часто заставляют классы времени выполнения выдавать исключения (например, доступ к списку массивов после конца).

  1. включить Исключение Java Точки останова / любое исключение на непойманные