0

Androidでは、エラーが発生するとランタイムエラーダイアログが表示されます。それを隠すことは可能ですか?または、本番モードで非表示にしますか?ユーザーに公開してはならないアプリに関するエラーメッセージが表示されているためです。

4

2 に答える 2

0

Thread.setDefaultUncaughtExceptionHandler(..)メインスレッドで使用して、キャッチされない例外のカスタムハンドラーを設定できます。そこで、次のパターンを使用する場合にデフォルトの動作を呼び出すなど、必要なことを実行できます。

public class ExceptionHandler implements UncaughtExceptionHandler
{
    /**
     * The default handler.
     */
    private UncaughtExceptionHandler defaultUEH;

    /**
     * Constructs the instance and sets the default handler to the one currently
     * active at the time of construction.
     */
    public ExceptionHandler() 
    {
        this.defaultUEH = Thread.getDefaultUncaughtExceptionHandler();
    }

    @Override
    public void uncaughtException(Thread thread, Throwable ex)
    {
        // do your stuff            

        // if you want to resume with the default behaviour, you call this
        defaultUEH.uncaughtException(thread, ex);
    }
}

あなたのActivity/でApplication

Thread.setDefaultUncaughtExceptionHandler(new ExceptionHandler());
于 2013-01-28T11:55:38.620 に答える
0

アプリが強制的に閉じられてメインスレッドが強制終了され、アプリが実行されなくなり、コーディングでアクセスできなくなると、アプリが強制的に閉じられないようにする必要があるため、別のスレッドを作成して状況を処理し、表示することができますユーザーへのカスタム ダイアログ。

おそらく、Github のAcraがこの問題の処理に役立つでしょう。

于 2013-01-28T11:27:36.880 に答える