Подключение ACRA

Ответить
Аватара пользователя
KamiSempai
Сообщения: 1339
Зарегистрирован: 17 фев 2012, 21:23
Откуда: Мордор

Подключение ACRA

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

Так как пользователи не охотно шлют отчеты об ошибка, решил подключить библиотеку ACRA.
Сделал все, вроде бы, по инструкции. http://habrahabr.ru/post/123542/ Только без параметра logcatArguments в анотации.
Однако, отчеты не отправляются и при попытке их отправки в логи вылетают ошибки.

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

03-25 22:54:12.116: W/ResponseProcessCookies(22961): Invalid cookie header: "Set-Cookie: NID=67=mkEFZDLsd6Vd04GgZzdpPhtFO9cPCHabQ0sIXKG7nUXkg7PrVrpMLwlPNXhOrJufCeY9G0ZAJUHZ0GWy8P1Yd33qYY6SK5TSqwdrJejMmbP1k32WmJCZfnfahMnx0zB9;Domain=.google.com;Path=/;Expires=Tue, 24-Sep-2013 18:54:13 GMT;HttpOnly". Unable to parse expires attribute: Tue
03-25 22:54:12.119: E/ACRA(22961): Failed to send crash report for 1364236260000-approved.stacktrace
03-25 22:54:12.119: E/ACRA(22961): org.acra.sender.ReportSenderException: Error while sending report to Google Form.
03-25 22:54:12.119: E/ACRA(22961): 	at org.acra.sender.GoogleFormSender.send(GoogleFormSender.java:88)
03-25 22:54:12.119: E/ACRA(22961): 	at org.acra.SendWorker.sendCrashReport(SendWorker.java:178)
03-25 22:54:12.119: E/ACRA(22961): 	at org.acra.SendWorker.checkAndSendReports(SendWorker.java:141)
03-25 22:54:12.119: E/ACRA(22961): 	at org.acra.SendWorker.run(SendWorker.java:77)
03-25 22:54:12.119: E/ACRA(22961): Caused by: java.io.IOException: Host returned error code 400
03-25 22:54:12.119: E/ACRA(22961): 	at org.acra.util.HttpRequest.sendPost(HttpRequest.java:139)
03-25 22:54:12.119: E/ACRA(22961): 	at org.acra.sender.GoogleFormSender.send(GoogleFormSender.java:85)
03-25 22:54:12.119: E/ACRA(22961): 	... 3 more
Что-то мне подсказывает, что я не правильно указал formKey. В инструкции говорится о ссылке внизу формы, но гугл диск с того момента сильно изменился.
У меня ссылка на форму выглядит так:
https://docs.google.com/forms/d/... Много цифр и букв .../edit
В качестве ключа я указал именно этот набор цифр и букв.
Но почему-то такой вариант не работает.

PS: Доступ у обоих документов(таблица и форма): "Изменить документ может любой пользователь, обладающий ссылкой.";
У приложения есть разрешение на интернет и чтение логов.
С интернетом проблем нет. На всякий случай установил socketTimeout = 30000.

PPS: И что за Expires такой, равный Tue? Может быть имелось ввиду True. Тогда получается ошибка в библиотеке?
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.

kolipass
Сообщения: 50
Зарегистрирован: 16 апр 2012, 14:10

Re: Подключение ACRA

Сообщение kolipass » 27 мар 2013, 11:40

Отвечу кратно.
@ReportsCrashes(formKey = "ключ 34 символа")
public class MyApplication extends Application {
@Override
public void onCreate() {
ACRA.init(this);
super.onCreate();
}
}

так будет работать. У меня так на продакте. пока хватает. Теперь про ключ:
Изображение
этот ключ.

Аватара пользователя
KamiSempai
Сообщения: 1339
Зарегистрирован: 17 фев 2012, 21:23
Откуда: Мордор

Re: Подключение ACRA

Сообщение KamiSempai » 27 мар 2013, 12:03

Теперь я понял в чем проблема. В самом начале я выбрал пункт "Создать форму", а надо было "Создать форму в прежней версии".
Если выбрать "Создать форму" пункт меню по созданию прежней формы исчезает. В начале я не обратил на это внимание, а потом было уже поздно.
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.

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

Re: Подключение ACRA

Сообщение rezak90 » 27 мар 2013, 14:38

кстати вопрос по этой либе, она отлавливает все креши? или только те которые в try-catch? я так понял что все если она подключается на уровне application.
и ещё вопрос, она умеет только отсылать? или можно записывать в бд креши?
R.id.team
Политика на форуме запрещена

Аватара пользователя
KamiSempai
Сообщения: 1339
Зарегистрирован: 17 фев 2012, 21:23
Откуда: Мордор

Re: Подключение ACRA

Сообщение KamiSempai » 27 мар 2013, 15:20

Я только начал изучать эту либу, но на сколько я понял отлавливает она только креши приложения которые ни как не были обработаны. А try-catch - это вполне нормальная обработка исключения.
Хотя, думаю, не будет проблемой в блоке catch самому передать Exception в библиотеку на обработку.
И, не пойму, зачем записывать исключения в базу?
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.

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

Re: Подключение ACRA

Сообщение rezak90 » 27 мар 2013, 15:55

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

Аватара пользователя
KamiSempai
Сообщения: 1339
Зарегистрирован: 17 фев 2012, 21:23
Откуда: Мордор

Re: Подключение ACRA

Сообщение KamiSempai » 27 мар 2013, 16:05

rezak90 писал(а):мы такое делаем на альфа/бета тестирование что бы народ собирал краши и потом отсылали нам, например краши могут быть каждую минуту и зачем пользователю отсылать кажду минуту, а так насобирал и в удобное время отпарвил
Про отправку пачками не знаю, но все отчеты которые не удалось отправить хранятся на устройстве и будут отправлены когда появится возможность. К тому же можно сделать так, что бы отчет отправлялся без подтверждения со стороны пользователя. Думаю всплывающий тост с информацией от том, что отчет отправлен не так сильно будет нервировать пользователя, как необходимость сделать это лично. Тем более не все пользователи на столько сознательны, многие просто поморщат нос, обругают программу и все.
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.

Ответить