Отлов не предусмотренных исключений. Как всегда поймать ошиб

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Отлов непредусмотреных исключений. Как всегда поймать ош

Сообщение Foenix » 29 мар 2013, 23:04

А объект application у меня естьу же, т.е. есть куда это записать..
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
Mikhail_dev
Сообщения: 2386
Зарегистрирован: 09 янв 2012, 14:45
Откуда: Самара

Re: Отлов непредусмотреных исключений. Как всегда поймать ош

Сообщение Mikhail_dev » 30 мар 2013, 11:39

Есть объект Application? Так возьмите с него контекст

Код: Выделить всё

application.getApplicationContext();
ну или если в самом application

Код: Выделить всё

this.getApplicationContext();

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Отлов непредусмотреных исключений. Как всегда поймать ош

Сообщение Foenix » 31 мар 2013, 20:58

Не хочет оно объявляться как

Код: Выделить всё

 static { 
	        Thread.setDefaultUncaughtExceptionHandler(new CustomExceptionHandler(this.getApplicationContext()));
	    }
Ошибка компилятора

Код: Выделить всё

The method setDefaultUncaughtExceptionHandler(Thread.UncaughtExceptionHandler) in the type Thread is not applicable for the arguments (CustomExceptionHandler)
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
Mikhail_dev
Сообщения: 2386
Зарегистрирован: 09 янв 2012, 14:45
Откуда: Самара

Re: Отлов непредусмотреных исключений. Как всегда поймать ош

Сообщение Mikhail_dev » 31 мар 2013, 22:25

А, ну да. Там же контекст нужен активности, для диалога.
У вас архитектурная ошибка. Советую поменять архитектуру. Сделайте наподобие как у меня. Сделайте отдельно логгер. Передавайте в него информацию по ошибке. Тогда контекст вам не понадобится. А после уже в самой активности берете эту информацию и реализуете ваш диалог.

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Отлов непредусмотреных исключений. Как всегда поймать ош

Сообщение Foenix » 31 мар 2013, 22:47

А как в таком случае будет выдаваться диалог? ведь он у тебя в активности, а у меня как раз контекст этот класс использует для выдачи диалога
Я немного запуталась :(
Получается "в активности берете ошибку и показываете диалог" - все равно получится, что в каждую активность прописывать. в данном случае диалог.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Отлов непредусмотреных исключений. Как всегда поймать ош

Сообщение Foenix » 31 мар 2013, 22:50

Вот тут советуют сделать отдельный интент для выдачи сообщения
http://stackoverflow.com/questions/1341 ... ionhandler
Я -то в активити могу сейчас вписать данную обработку, т.к. у меня есть класс - родитель всех активностей приложения.
Там можно вставить. Остался вопрос с потоками - у меня есть несколько.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
Mikhail_dev
Сообщения: 2386
Зарегистрирован: 09 янв 2012, 14:45
Откуда: Самара

Re: Отлов непредусмотреных исключений. Как всегда поймать ош

Сообщение Mikhail_dev » 31 мар 2013, 23:03

Давай лучше на ты, а то как-то не уютно.
Теперь понял в чем проблема. Я сам просто енмного запутался. Да, с интентом лучше всего будет. Сделать отдельную активность для ошибки.
На счет потоков. А в чем проблема? Если изменить обработчик исключений в классе унаследованном от Application, то обработчик автоматически поменяется во всех потоках и процесса приложения.

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Отлов непредусмотреных исключений. Как всегда поймать ош

Сообщение Foenix » 31 мар 2013, 23:05

ну наконец-то (это я про "ты") :)
ну опять мы говорим об Application, туда не катит запихивать обработчик
вот чую не получится.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Отлов непредусмотреных исключений. Как всегда поймать ош

Сообщение rezak90 » 31 мар 2013, 23:19

я так понял вы не любите интерфейсы =)
R.id.team
Политика на форуме запрещена

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Отлов непредусмотреных исключений. Как всегда поймать ош

Сообщение Foenix » 31 мар 2013, 23:22

rezak90 писал(а):я так понял вы не любите интерфейсы =)
ближе к делу ;)
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Отлов непредусмотреных исключений. Как всегда поймать ош

Сообщение rezak90 » 31 мар 2013, 23:40

Olivka писал(а):
rezak90 писал(а):я так понял вы не любите интерфейсы =)
ближе к делу ;)
а паттерне "наблюдатель" слыхали? в Java он уже есть реализован - Observer, но я предпочитаю руками делать а не пользоваться обсерверами
R.id.team
Политика на форуме запрещена

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Отлов непредусмотреных исключений. Как всегда поймать ош

Сообщение Foenix » 31 мар 2013, 23:50

rezak90 писал(а):
Olivka писал(а):
rezak90 писал(а):я так понял вы не любите интерфейсы =)
ближе к делу ;)
а паттерне "наблюдатель" слыхали? в Java он уже есть реализован - Observer, но я предпочитаю руками делать а не пользоваться обсерверами
мне что-то кажется, это больше вот в эту тему viewtopic.php?f=38&t=1798
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
neoksi
Сообщения: 712
Зарегистрирован: 26 июл 2012, 10:42
Контактная информация:

Re: Отлов непредусмотреных исключений. Как всегда поймать ош

Сообщение neoksi » 31 мар 2013, 23:52

rezak90 писал(а):
Olivka писал(а):
rezak90 писал(а):я так понял вы не любите интерфейсы =)
ближе к делу ;)
а паттерне "наблюдатель" слыхали? в Java он уже есть реализован - Observer, но я предпочитаю руками делать а не пользоваться обсерверами
Я как вижу ты все любишь делать руками, а не использовать стандартные проверенные временем =).

Ты бы четко описал свою идею реализации, а то даже я не совсем понял, как ты хочешь задействовать интерфейсы в данной задаче.

Аватара пользователя
rezak90
Сообщения: 3422
Зарегистрирован: 26 июн 2012, 13:22
Откуда: UA
Контактная информация:

Re: Отлов непредусмотреных исключений. Как всегда поймать ош

Сообщение rezak90 » 01 апр 2013, 01:29

Сделать какой нибудь менеджер у которого будет список подписавшихся на выброс ошибку активити и во время ошибки вызывать этот менеджер и вываливать ошибку, кто подписан тот и получит сообщение.
R.id.team
Политика на форуме запрещена

SergeClause
Сообщения: 19
Зарегистрирован: 30 июл 2013, 21:10

Re: Отлов непредусмотреных исключений. Как всегда поймать ош

Сообщение SergeClause » 03 сен 2013, 16:12

Foenix писал(а): Сейчас вот заметила, что перед запуском программы из эклипса на устройстве пишет
03-29 20:00:02.388: E/Trace(2296): error opening trace file: No such file or directory (2)
Может в этом все дело, я раньше не замечала этой строчки.
А с ...E/Trace: error opening trace file: No such file or directory (2)... разобрались?

Аватара пользователя
kondra007
Сообщения: 91
Зарегистрирован: 23 янв 2013, 14:49

Re: Отлов не предусмотренных исключений. Как всегда поймать

Сообщение kondra007 » 01 июн 2014, 17:14

А почему бы не использовать Acra? http://acra.ch/
Готовое и более гибкое решение с очень удобной веб-версией для контроля ошибок.

Viewer
Сообщения: 180
Зарегистрирован: 30 апр 2014, 11:42

Re: Отлов не предусмотренных исключений. Как всегда поймать

Сообщение Viewer » 01 июн 2014, 17:41

Вот только им Гугл болт показал по поводу использования GoogleDocs. Видать заспамили гугл своими отчетами ))

Аватара пользователя
kondra007
Сообщения: 91
Зарегистрирован: 23 янв 2013, 14:49

Re: Отлов не предусмотренных исключений. Как всегда поймать

Сообщение kondra007 » 01 июн 2014, 17:45

Viewer писал(а):Вот только им Гугл болт показал по поводу использования GoogleDocs. Видать заспамили гугл своими отчетами ))
Я не застал времена использования Acra с Google Docs, сейчас держу базу на Cloudant.com (бесплатно до миллиона запросов, что ли, а у меня прога совсем непопулярная, максимум, 5-10 ошибок в месяц прилетит). Соответственно, веб-интерфейс тоже от Acra, очень удобный, с графиками, подробными отчетами и прочими плюшками.

Аватара пользователя
Mikhail_dev
Сообщения: 2386
Зарегистрирован: 09 янв 2012, 14:45
Откуда: Самара

Re: Отлов не предусмотренных исключений. Как всегда поймать

Сообщение Mikhail_dev » 02 июн 2014, 15:39

Можно и сторонние сервисы использовать. Сейчас их использование будет более правильным, если они работают без проблем.

Аватара пользователя
Leeroy
Сообщения: 67
Зарегистрирован: 12 дек 2013, 21:25

Re: Отлов не предусмотренных исключений. Как всегда поймать

Сообщение Leeroy » 05 авг 2014, 10:18

Не понятно про class App extends android.app.Application.
Если это singletonто почему дефолтный конструктор не приватный (private App(){}) ?
И где (в каком/каких активити) получать инстанс этого класса для отлова не отлавливаемых искл.?
Я его(class App) создал в том же package что и Главная активити.
Java Core -> JDBC -> GoF -> Android SDK ->...
Телепрограмма в твоем смарте Телепрограмма

Ответить