Android WindowManager优雅的崩溃处理

时间:2014-08-12 16:51:04

标签: android exception-handling crash popup android-windowmanager

我正在为Android编写一个使用WindowManager类来创建弹出窗口的应用程序。一切都很好,除了我担心我的应用程序崩溃。我的假设是,无论我的应用程序编码得多好,某个地方的人都会遇到崩溃。

那就是说,我想为我的应用程序崩溃找到一个优雅的解决方案。目前,如果在我的应用程序中的任何地方抛出未捕获的异常,窗口仍然可见,并且由于我正在使用的窗口类型和大小,系统对话框"应用程序已崩溃,"是不可触摸的。这会导致死锁,并且通常需要对设备进行硬重置以解决此问题。

我的第一个想法是设置一个Thread.UncaughtExceptionHandler,代码如下:

Process.killProcess(Process.myPid());
System.exit(0);

不幸的是,当我看到日志中正在调用该方法时,应用程序实际上并没有像我预期的那样崩溃(进程死亡,所有窗口都消失等)。

在后台服务中使用WindowManager#addView时,是否有更优雅的方法来处理崩溃?

0 个答案:

没有答案