Как ПОДАВИТЬ сообщения «К сожалению, [приложение] остановлено»?

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

Как я могу сделать так, чтобы мой телефон перестал выскакивать сообщения об ошибках «к сожалению [бла] остановился» всякий раз, когда что-то выходит из строя? (У меня есть root-права, поэтому я могу редактировать все необходимое.)

Mehrdad, перейдите на вкладку «Все приложения» в настройках-> приложения [или тому подобное] и сначала перейдите в настройки соответствующего приложения и отключите уведомления. Перезагрузка, я предполагаю, что это происходит при загрузке? Посмотрите, решит ли это проблему. В противном случае вам нужно приложение, если нет встроенной функции для микроуправления уведомлениями. @Lucky точен, проверьте свой логарифм, он может показать вам путь к решению проблемы.
Я немного подчистил комментарии, мы примем как данность, что вы не хотите удалять приложение и тому подобное.

Ответы (2)

Вы не можете (без настройки кода). Соответствующий код находится в диспетчере действий (см. crashApplication()и handleAppCrashLocked()), и он подавляет эти сообщения о сбоях только в 2 случаях:

  1. Приложение вылетело слишком рано с момента последнего сбоя
  2. Всего приложение вылетало слишком много раз

Как сказал Мэтью, вы не можете изменить это поведение без перестройки AOSP.

Помимо настройки ActivityManagerService.java, вы также можете изменить AppErrorDialog.java: этот класс реализует диалог, и он уже разработан, чтобы закрыть себя после тайм-аута, который довольно дольше (5 минут в Marshmallow). Вы можете сделать его короче, уменьшив DISMISS_TIMEOUT, например, до нескольких секунд, и сделать всплывающее окно менее навязчивым.