Android-приложение вылетает с сигналом SIGABRT 6 только при отладке Eclipse

У меня есть приложение, которое отлично работает на устройстве без прикрепленного отладчика. Однако у меня проблема при отладке в Eclipse:

Когда основной stream приостанавливается на 10 секунд или более (например, после удара точки останова), основной stream выдает SIGABRT, по-видимому, исходящий из libc.

Единственное объяснение, о котором я мог думать, это то, что очередь сообщений в основном streamе, когда он не опрошен, переполнен сообщениями, поступающими из другого streamа. Тем не менее, я не вижу, как куча растет, когда основной stream приостановлен. Более того, хотя мое приложение имеет около 20 streamов между всеми службами, поставщиками контента, широковещательными приемниками, HTTP и рабочими streamами карт и т. Д., Я не могу действительно думать о источнике каких-либо чрезмерных сообщений.

Поэтому мой вопрос: как мне решить эту проблему? Какие инструменты я могу использовать и как мне найти, что приводит к сбою моего приложения, когда он сидит в отладчике?

Изменить 1:

Единственное, что в logcat:

02-05 22:23:54.861: I/dalvikvm(26795): threadid=3: reacting to signal 3 02-05 22:23:54.901: D/dalvikvm(26795): threadid=1: still suspended after undo (sc=1 dc=1) 02-05 22:23:54.901: I/dalvikvm(26795): Wrote stack traces to '/data/anr/traces.txt' 02-05 22:23:58.905: A/libc(26795): Fatal signal 6 (SIGABRT) at 0x000002f5 (code=0), thread 26795 (om.myapp) 

Изменить 2:

Дальнейшее исследование заставляет меня поверить, что андроид намеренно убивает мой процесс, потому что ошибочно полагает, что stream пользовательского интерфейса висит. Проблема не в моем приложении. Итак, теперь мой вопрос: как остановить Android от убийства моего процесса во время отладки?

    андроид намеренно убивает процесс, потому что он считает, что stream пользовательского интерфейса висит, поэтому его ANR право. для целей отладки вы можете,

    Перейдите в Настройки -> Параметры разработчика и установите флажок Показать все ANR.

    Это отобразит диалоговое окно App Not Responseing для приложений, работающих в фоновом режиме. Вы можете нажать кнопку «Ожидание» в диалоговом окне, чтобы система не убивала ваш процесс до приставки отладчика. Обратите внимание, что диалог открывается автоматически для приложений, работающих на переднем плане. Для фоновых приложений вы должны включить эту опцию

    Это началось со мной в android 7.1.1

    При подключении отладчика мое приложение всегда терпело крах, то же самое при запуске приложения в режиме отладки.

    Для меня это было просто:

    • Запустите приложение
    • Нажмите «Отключить точки останова» в Debug
    • Прикрепить отладчик
    • Повторно нажмите «Mute Breakpoints», чтобы включить звук
    • Выполнено, снова отладка

    У меня были аналогичные проблемы, но то, что предложил Сэм, не помогло – я должен был ОСНОВАЛ УДАЛЕНИЕ точек останова, а затем это сработало для меня.

    Мне приходилось переустанавливать андроид-студию один раз, а во второй раз это случилось, это просто ушло само собой

    Interesting Posts
    Давайте будем гением компьютера.