码迷,mamicode.com
首页 > 移动开发 > 详细

Android全局捕获异常处理

时间:2014-09-30 16:35:09      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:android   style   blog   color   io   ar   java   sp   div   

很多时候我们在程序运行的时候,一旦出现了一个异常,而我们在程序中没有捕捉到,没有处理,就会弹出一个

对话框,导致程序崩掉,这种情况的用户体验极差,接下来就来说如何解决这个问题,程序中任何漏掉的异常处理我们都可以

捕捉到,就是全局异常捕获,代码如下:

 1 package com.qdsj.hxcmjj.util;
 2 
 3 import java.lang.Thread.UncaughtExceptionHandler;
 4 
 5 import android.app.ProgressDialog;
 6 import android.content.Context;
 7 
 8 /**
 9  * 异常处理类
10  * @author jansin
11  *
12  */
13 public class CrashHandler implements UncaughtExceptionHandler {
14     public static final String TAG = "CrashHandler";
15     private static CrashHandler INSTANCE = new CrashHandler();
16     private Context mContext;
17     ProgressDialog loadingDialog;
18 
19     private CrashHandler() {
20     }
21 
22     public static CrashHandler getInstance() {
23         return INSTANCE;
24     }
25 
26     public void init(Context ctx) {
27         mContext = ctx;
28         Thread.setDefaultUncaughtExceptionHandler(this);
29         
30         //初始化异常处理类
31     }
32 
33     @Override
34     public void uncaughtException(Thread arg0, Throwable arg1) {
35     
36         //捕获到异常后在这里做处理
37     }
38 
39 
40 }
UncaughtExceptionHandler全局异常捕获类 如代码中所示

有了这个自定义类之后,我们还需要在程序运行之前对异常处理类进行初始化,最好是在application类中对全局异常捕获类进行初始化
有了这个类之后,就可以解决我们遗漏的异常捕获导致程序奔溃的问题了。

 

Android全局捕获异常处理

标签:android   style   blog   color   io   ar   java   sp   div   

原文地址:http://www.cnblogs.com/all88/p/4002053.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!