我想在应用程序崩溃时使用“重新启动应用程序”选项打开静态屏幕。它可以从任何屏幕显示。是否可以在应用程序级别触发应用程序崩溃事件并启动新屏幕?我对此一无所获。
任何帮助表示赞赏。
请您参考如下方法:
在您的Application类中,您可以添加UncaughtExceptionHandler。
例如,将此变量添加到应用程序类中:
private Thread.UncaughtExceptionHandler unCaughtExceptionHandler = (thread, ex) -> {
ex.printStackTrace();
[set some sharedpreference like `isCrash` to true]
};
Application类本身具有一种称为
setDefaultUncaughtExceptionHandler(UncaughtExceptionHandler eh)
现在,将自定义变量
unCaughtExceptionHandler
设置为该方法的参数。
在应用程序下次启动时,只需加载sharedPref
isCrash
即可。
如果是这样,请显示“哦,不,应用程序崩溃了”屏幕,然后将isCrash再次设置为false。
当
isCrash
为false时,只需加载常规 Activity
希望这可以帮助!