Android - как отправлять отчеты о сбоях?

Похоже, что в Android 2.2 появилась новая функция для отправки отчетов о сбоях, как указано в ссылках:

Как использовать эту функцию? Он автоматический для каждого скачанного с маркета приложения (он же Google Play Store)? Где можно найти дополнительную информацию об этой функции?

Кроме того, можно ли настроить отправляемые данные, например, с помощью DefaultExceptionHandler, и добавить собственное описание сбоя?

ПРИМЕЧАНИЕ:я знаю, что существует множество инструментов для отправки отчетов о сбоях (например, ACRA), но я хочу сначала проверить, можно ли использовать то, что уже есть.

РЕДАКТИРОВАТЬ: Мне удалось изменить переданное дальше исключение, надеясь, что это также изменит отчет, отправляемый на веб-сайт разработчика Google.

Вот пример кода, который подходит для этого:

private static class DefaultExceptionHandler implements java.lang.Thread.UncaughtExceptionHandler
...
@Override
public void uncaughtException(Thread t, Throwable e)
{
  final StackTraceElement[] exceptionStackTrace = e.getStackTrace();
  Exception exception = new Exception("my new exception!", e);
  final StackTraceElement[] newExceptionStackTrace = new StackTraceElement[exceptionStackTrace.length + 1];
  System.arraycopy(exceptionStackTrace, 0, newExceptionStackTrace, 1, exceptionStackTrace.length);
  newExceptionStackTrace[0] = new StackTraceElement("TEST CLASS", "TEST METHOD", "TEST FILE", 0);
  exception.setStackTrace(newExceptionStackTrace);
_defaultUEH.uncaughtException(t, exception); //this will hopefully call the default handling of the exception for reporting
}

12
задан vaxquis 14 February 2015 в 14:34
поделиться