Как изменить сообщение о сбое в Android(если это возможно)

Мне интересно, можно ли изменить сообщение о сбое для Android?("К сожалению, приложение остановилось") Я не нашел ничего, что говорит, что вы можете (что я не думаю, что вы можете), я просто проверяю, спрашиваю здесь.

Спасибо

2 ответа

Вы не можете изменить системное сообщение, как заявлено @Nuno Gomes, но вы можете отключить исходное сообщение и отобразить сообщение самостоятельно или начать какую-либо деятельность.

Вы можете определить обработчик исключений, который будет перехватывать все неперехваченные исключения в классе приложения и показывать оттуда окно сообщения.

public class MyApp extends Application  implements Thread.UncaughtExceptionHandler {
    private Thread.UncaughtExceptionHandler mPreviousUncaughtExceptionHandler;
    @Override public void onCreate() {
        super.onCreate();
        mPreviousUncaughtExceptionHandler = Thread.getDefaultUncaughtExceptionHandler();
        Thread.setDefaultUncaughtExceptionHandler(this);
    }

    @Override
    public void uncaughtException(Thread thread, Throwable ex) {
        try {
            // Do your stuff with the exception
            Log.e(Global.LOG_CONTEXT,"LogCat.uncaughtException " + ex, ex);
            // show user defined messagebox

        } catch (Exception e) {
            /* Ignore */
        } finally {
            // uncomment this to let Android show the default error dialog
            // mPreviousUncaughtExceptionHandler.uncaughtException(thread, ex);
        }
    }

}

приложение должно быть объявлено в манифесте

<manifest ...>

    ...

    <application
        android:name=".MyApp" ...>
    </application>
</manifest> 

На моем Android-4.4 я использую этот код, чтобы написать файл журнала треша

Это сообщение является системным сообщением, оно выходит за рамки приложения, поэтому вы не можете его изменить

Другие вопросы по тегам