Как гарантировать отображение исключений на Android при любых обстоятельствах? - PullRequest
0 голосов
/ 04 июня 2011

Я много читал об использовании Toast или Log и размещении их в Thread.setDefaultUncaughtExceptionHandler(...).
Но я просто не могу отобразить ВСЕ исключения.

Пожалуйста, скажите мне (или укажите мне ресурс), где описано, как это сделать.
С рабочими примерами, когда это возможно.

Спасибо.

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

1 Ответ

0 голосов
/ 04 июня 2011

Если вы только разрабатываете, не пытайтесь использовать Toasts для отображения исключений, просто работайте с Log.e () и другими функциями Log, все это будет отображаться в LogCat, вы не потеряете никаких исключений. Если вы хотите уведомить пользовательский интерфейс о том, что произошло исключение, сделайте это с BroadcastReciever . Таким образом, у вас есть место, где вы ловите Исключение, которое запускает Намерение, которое содержит сообщение как дополнительное, и в вашей Деятельности вам просто нужно

 registerReceiver(receiver, new IntentFilter("SOME_STRING_IDENTIFYING_THE_INTENT"));

Убедитесь, что вы отменили регистрацию в методе Activity onPause. BroadcastReciever имеет метод onReceive, который можно использовать для запуска Toast.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...