如何更换标准错误信息?

问题描述:

当应用程序崩溃时,我们可以看到类似您的精彩应用程序已停止。我怎样才能改变这段文字?如何更换标准错误信息?

+1

你不能。它的Android运行时检测到崩溃并产生消息。 – Phil

器具UncaughtExceptionHandler并将其分配给您的Application

public class MyApplication extends Application { 
    @Override 
    public void onCreate() { 
     super.onCreate(); 

     Thread.setDefaultUncaughtExceptionHandler(new CrashHandler()); 
    } 
} 

public final class CrashHandler implements UncaughtExceptionHandler { 
    private final UncaughtExceptionHandler handler; 

    public CrashHandler() { 
     // Uncomment this line if you want to show the default app crash message 
     //this.handler = Thread.getDefaultUncaughtExceptionHandler(); 
    } 

    @Override 
    public void uncaughtException(final Thread thread, final Throwable throwable) { 
     // Show pretty message to user 

     // Uncomment this line to show the default app crash message 
     //this.handler.uncaughtException(thread, throwable); 
    } 
} 
+0

感谢您的代码片段。 :)我只是想知道如果错误仍然是发送到游戏商店的开发控制台? – Endzeit

+0

只有未处理的错误(即崩溃)将被发送到开发控制台。如果您在uncaughtException()中处理它,并且从不调用Thread.getDefaultUncaughtExceptionHandler()。uncaughtException(),它将不会被发送到开发控制台。 – Alan

我觉得这是你从网站上找什么

ACRA - Application Crash Report for Android

提要

当碰撞发生时,您可以选择和配置4种不同的互动方式与用户:

无声(默认):ACRA操作不可见。发送崩溃报告,然后默认的android崩溃系统完成它的工作(强制关闭对话框)

Toast:发生崩溃时,ACRA显示一个Toast并同时发送报告。

通知:应用程序崩溃时显示可选的烤面包,但不立即发送报告。发布状态栏通知警告用户他应该发送报告。选中时,通知会显示一个对话框,要求授权发送报告,并附带可选的用户注释。

对话框:自4.3.0b1,实验性,允许显示崩溃对话框,而不需要状态栏通知。

希望链接帮助。

+0

因此,您可以选择当您的应用失败时看到的四个(三个真正的)Android通知中的哪一个,但您实际上不能对其中任何一个通知。这回答了一个不同的问题:“我怎样才能改变文本”(即用他自己选择的文本替换它)。 – Phil

+0

是的,它是完全不同的东西 – Yarh

+0

嘿,对不起,我..想知道这个问题..以为你问如何处理它..感谢您纠正它.. –

由于未处理的异常,通常会显示这些错误。如果在程序的开头设置了未处理的异常处理程序,然后在那里显示要查看的消息。

但是,我不完全确定,但是,如果在您的消息之后显示是否也显示了默认的Android警报,但这可能是您在之后。

+0

如果我们不明确地调用它,默认不显示。 – Yashasvi