android捕获全局异常,并对异常做出处理

简介:

 

在做项目时,经常会把错误利用异常抛出去,这样在开发时就可以通过手机抛的异常排查错误,很方便。但是当程序开发完毕,版本稳定,需要上线时,为了避免抛出异常影响用户感受,可以捕获全局异常,对异常做出处理。

具体的实方法如下:

利用Thread.UncaughtExceptionHandler 获取异常,并对异常做出处理:

public class MyUncaughtExceptionHandler implements 
Thread.UncaughtExceptionHandler { 
private Thread.UncaughtExceptionHandler a; 
MyUncaughtExceptionHandler(){ 
this.a = Thread.getDefaultUncaughtExceptionHandler(); 

@Override 
public void uncaughtException(Thread thread, Throwable ex) { 
Log.i("huilurry","ppppppppppppp="+ex.getMessage()); 
//是否抛出异常 
// if(a!=null) 
// a.uncaughtException(thread, ex); 

}

 

具体调用:

public class HuiLurryActivty extends Activity { 
@Override 
public void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
setContentView(R.layout.main); 
String t=android.provider.Settings.System.getString(getContentResolver(), "android_id"); 
Log.i("huilurry","android_id="+t); 
huilurry(); 
throw new NullPointerException("is null"); 

HandlerThread localHandlerThread; 
Handler handler; 
private void huilurry() 

localHandlerThread=new HandlerThread("huilurry"); 
localHandlerThread.start(); 
handler=new Handler(localHandlerThread.getLooper()); 
Thread.setDefaultUncaughtExceptionHandler(new MyUncaughtExceptionHandler()); 

}

主要是利用了Hander和HandlerThread。

源代码见:http://wangjun-memory.googlecode.com/svn/trunk/android.huilurry

 

 

     本文转自xyz_lmn51CTO博客,原文链接:http://blog.51cto.com/xyzlmn/818180,如需转载请自行联系原作者


相关文章
|
8月前
|
Android开发
Android > Project with path ‘:audiovisualize‘ could not be found in project ‘:app‘. 异常解决方案
Android > Project with path ‘:audiovisualize‘ could not be found in project ‘:app‘. 异常解决方案
42 0
|
11月前
|
JSON Android开发 数据格式
Android:解析Json异常 Expected a string but was BEGIN_OBJECT at
今天解析后端数据时,发现了这个报错:Expected BEGIN_OBJECT but was STRING at 看来是自己哪儿解析错误了。 因为数据的特殊性,后端返回的Json串里面可能还会有Json数据,可能嵌套了三次层,
|
11月前
|
Android开发
Android oppo手机显示安装包异常(Bug6)
Android oppo手机显示安装包异常(Bug6)
|
Java Android开发
Android 8.1 FreeForm切换显示异常
Android 8.1 FreeForm切换显示异常
505 0
Android 8.1 FreeForm切换显示异常
|
Java 数据库 Android开发
Android 7.1 异常删除data文件导致HOME键失效
Android 7.1 异常删除data文件导致HOME键失效
144 0
|
存储 XML 设计模式
一个简单的Android网络访问全局码判断及通用数据解析方案
我们在开发中,网络请求经常会遇到各种错误码的判断。比如下面这样:
120 0
|
XML 缓存 API
Android 天气APP(十四)修复UI显示异常、优化业务代码逻辑、增加详情天气显示
Android 天气APP(十四)修复UI显示异常、优化业务代码逻辑、增加详情天气显示
187 0
Android 天气APP(十四)修复UI显示异常、优化业务代码逻辑、增加详情天气显示
|
Java Linux API
Android 是怎么捕捉 native 异常的
Android 是怎么捕捉 native 异常的
540 0
|
Java Android开发
Android 是怎么捕捉 java 异常的
Android 是怎么捕捉 java 异常的
106 0
Android 是怎么捕捉 java 异常的