我想在应用程序崩溃时使用“重新启动应用程序”选项打开静态屏幕。它可以从任何屏幕显示。是否可以在应用程序级别触发应用程序崩溃事件并启动新屏幕?我对此一无所获。

任何帮助表示赞赏。

请您参考如下方法:

在您的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

希望这可以帮助!


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!