Исключение Xamarin Android вызывает "Кадр не в модуле"

Я новичок в Xamarin и в настоящее время разрабатываю свое первое приложение на Android.

Я специально создал исключение следующим образом:

throw new Exception("Whoops");

Когда я нажимаю на эту строку, эмулятор не дает никаких признаков того, что возникла проблема. Если я устанавливаю точку останова в приведенной выше строке в Visual Studio, а затем перехожу через нее, я получаю следующую ошибку:

Кадр не в модуле Текущий кадр стека не найден в загруженном модуле.

Как я могу заставить Visual Studio точно сказать, что пошло не так? На данный момент я не могу найти никаких следов исключения.

4 ответа

Решение

Эта ссылка рассказала мне, что мне нужно было знать: https://developer.xamarin.com/guides/android/deployment,_testing,_and_metrics/android_debug_log/

Вы просто идете в View > Other Windows > Android Device Logging из Visual Studio. Я нашел, что лучше всего использовать просмотр текста.

Если есть лучший способ, пожалуйста, дайте мне знать, хотя.

Это происходит потому, что отладчик не может перейти в другое пространство имен, поэтому, если ваш код, вызывающий другие методы из другого пространства имен, перейдите к нему и добавьте точку

Я работаю с Xamarin.формы и есть проблема с моим проектом.droid...
Сообщения об ошибках "кадр не в модуле" появляется каждый раз, когда VS пытается исследовать "чужой" код. Это, хотя я установил опцию "Включить только мой код" в настройках отладчика (так что... для меня это ошибка).

Тем не менее, простой обходной путь работает для меня:
В режиме отладки просто нажмите кнопку " Переступить" (F10), а не "шаг в" (примечание: это кнопка справа от переворота в верхней панели значков VS).

Только это работало для меня на VS 2015:

  1. откройте "DEBUG -> Windows -> Настройки исключений"

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

(то же самое работает с VS 2013, но на шаге 1. откройте "DEBUG -> Исключения")

Другие вопросы по тегам