似乎从Android 2.2开始,有一项新功能可以发送崩溃报告,如链接所述:
- http://www.androidcentral.com/new-android-app-crash-report-tool-already-and-running
- http://android-developers.blogspot.com/2010/05/google-feedback-for-android.html
- http://developer.android.com/sdk/android-2.2-highlights.html
- http://www.youtube.com/watch?v=o8unC9bA4O8
此外,是否可以通过使用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
}