Android 如何捕获我的应用程序';英国坠机报告

Android 如何捕获我的应用程序';英国坠机报告,android,Android,我正在开发android应用程序。每当我的应用程序在设备上崩溃时,我想给自己发送一封电子邮件,这样我就可以通过电子邮件找到我的应用程序的崩溃报告。我如何在我的应用程序中实现这个概念?是否有任何异常处理程序?如果您将应用程序添加到Android Market,那么Google也会向您的电子邮件发送崩溃报告。实际上,Google发送应用程序中发生的未经处理的异常,导致崩溃(强制关闭)。这不需要特殊代码。我在活动的onCreate()中使用它捕获未处理的异常: 这会将应用程序中在活动中发生的所有未处理

我正在开发android应用程序。每当我的应用程序在设备上崩溃时,我想给自己发送一封电子邮件,这样我就可以通过电子邮件找到我的应用程序的崩溃报告。我如何在我的应用程序中实现这个概念?是否有任何异常处理程序?

如果您将应用程序添加到Android Market,那么Google也会向您的电子邮件发送崩溃报告。实际上,Google发送应用程序中发生的未经处理的异常,导致崩溃(强制关闭)。这不需要特殊代码。

我在活动的
onCreate()中使用它捕获未处理的异常:


这会将应用程序中在活动中发生的所有未处理异常写入文本文件。然后你可以分析它

我使用ACRA收集碰撞报告。由于这些数据被收集到基于Google docs的电子表格中,您可以将其配置为在文档更新时收到通知

@谢谢您的回答,我需要在测试级别检查我的应用程序,所以我需要崩溃报告..@因为我的应用程序由100名成员进行测试,所以我在测试中找到崩溃报告level@Thanks感谢您宝贵的重播。欢迎您。希望这是您希望支持测试人员的内容。这很好,我知道这已经有一段时间了,但有没有办法让它仍然显示“不幸的是,应用程序已停止”?嘿@jhnewkirk,希望现在回答您的问题还不算太晚。要让应用程序像往常一样失败,你需要做的是重新抛出异常。查看java的throw关键字。请注意“未捕获的异常(线程t,可丢弃的e)”。抛出该方法提供给您的“可丢弃的e”。更新到我以前的评论。糟糕的是,你似乎无法重新显示异常,因为你必须尝试/抓住一个机会。起初我发现ACRA很有用,但它发布到的Google文档很快就被细节淹没了。它需要经常“清理”。
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);