代码之家  ›  专栏  ›  技术社区  ›  gregm

线程遇到未捕获的异常后,如何显示对话框?

  •  0
  • gregm  · 技术社区  · 16 年前

    uncaught exception 在我的Android应用程序中发生了。

    一旦检测到,我想显示一个确认对话框

    我的代码对此作出了响应:

    new CatchAllExceptionHandler(this) is my custom handler
    Thread.setDefaultUncaughtExceptionHandler(new CatchAllExceptionHandler(this));
    

    我已经尝试了的这两种实现 CatchAllExceptionHandler :

    1. 显示警报对话框
    2. 启动一个活动,然后在onCreate之后显示警报对话框

    这两种方法都失败了。

    所以我的问题是:如何正确显示确认对话框?

    1 回复  |  直到 11 年前
        1
  •  2
  •   CommonsWare    16 年前

    您可能正试图在非UI线程上执行UI操作。使用任何可用的技术( Handler , Handler#post , View#post Activity#runOnUiThread , AsyncTask#onPostExecute )安排在UI线程上完成UI工作。