我正在开发Android应用程序。每当我的应用程序在设备上崩溃时,我都会向自己发送一封电子邮件,以便我可以通过电子邮件找到我的应用程序崩溃报告。如何在我的应用程序中实现此概念?有任何异常处理程序吗?
答案 0 :(得分:18)
我在我的活动onCreate()
:
mUEHandler = new Thread.UncaughtExceptionHandler() {
@Override
public void uncaughtException(Thread t, Throwable e) {
try {
PrintWriter pw = new PrintWriter(new OutputStreamWriter(
openFileOutput(DMP_FILENAME, 0)));
e.printStackTrace(pw);
pw.flush();
pw.close();
} catch (FileNotFoundException e1) {
// do nothing
}
BaseActivity.this.finish();
}
};
Thread.setDefaultUncaughtExceptionHandler(mUEHandler);
这会将您的应用中发生的每个未处理的异常写入您的活动到文本文件。然后你可以分析它。
答案 1 :(得分:2)
我使用ACRA http://code.google.com/p/acra/来收集崩溃报告。由于这些已收集到基于Google文档的电子表格中,因此您可以配置为在更新该文档时收到通知
答案 2 :(得分:0)
如果您将应用程序添加到Android电子市场,那么Google也会向您的电子邮件发送崩溃报告。实际上,Google会发送导致崩溃的应用程序中发生的未处理异常(强制关闭)。不需要特殊代码。