android捕获全局异常,并对异常做出处理
2019独角兽企业重金招聘Python工程师标准>>>
在做项目时,经常会把错误利用异常抛出去,这样在开发时就可以通过手机抛的异常排查错误,很方便。但是当程序开发完毕,版本稳定,需要上线时,为了避免抛出异常影响用户感受,可以捕获全局异常,对异常做出处理。
具体的实方法如下:
利用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
转载于:https://my.oschina.net/201003674/blog/288998
android捕获全局异常,并对异常做出处理相关推荐
- Android UncaughtExceptionHandler 全局异常监控
2019独角兽企业重金招聘Python工程师标准>>> 一.全局捕获异常 为了解决这样的问题,我们需要能够及时的捕获异常,但要捕获的地方是在太多,因此,我们需要进行全局性的异常捕获, ...
- android bug监控,Android UncaughtExceptionHandler 全局异常监控
一.全局捕获异常 为了解决这样的问题,我们需要能够及时的捕获异常,但要捕获的地方是在太多,因此,我们需要进行全局性的异常捕获,那么如何捕获全局异常呢? 答案是UncaughtExceptionHand ...
- PHP 捕获全局异常
PHP 捕获全局异常 参考文章: (1)PHP 捕获全局异常 (2)https://www.cnblogs.com/yaomao/p/11260388.html (3)https://www.java ...
- WPF捕获全局未处理异常
WPF捕获全局未处理异常 参考文章: (1)WPF捕获全局未处理异常 (2)https://www.cnblogs.com/xiesong/p/7732023.html (3)https://www. ...
- asp.net捕获全局未处理异常的几种方法
通过HttpModule来捕获未处理的异常[推荐] 首先需要定义一个HttpModule,并监听未处理异常,代码如下: public void Init(HttpApplication context ...
- express捕获全局异常的三种方法
express捕获全局异常的三种方法 参考文章: (1)express捕获全局异常的三种方法 (2)https://www.cnblogs.com/chenqionghe/p/11349521.htm ...
- 在C#代码中应用Log4Net(四)在Winform和Web中捕获全局异常
毕竟人不是神,谁写的程序都会有bug,有了bug不可怕,可怕的是出错了,你却不知道错误在哪里.所以我们需要将应用程序中抛出的所有异常都记录起来,不然出了错,找问题就能要了你的命.下面我们主要讨论的是如 ...
- Springboot捕获全局异常:MethodArgumentNotValidException
Springboot捕获全局异常:MethodArgumentNotValidException 控制器 方法上添加@Valid注解 @PostMapping("/update") ...
- Android 捕获主线程异常崩溃
一般情况下我们想要捕获全局异常会调用Thread.setDefaultUncaughtExceptionHandler方法:这个方法虽然能捕获所有线程的异常,但如果是主线程发生未捕获异常,APP虽然不 ...
最新文章
- 10.Redis 性能测试
- 平板电脑怎么投屏到电视上_电脑屏幕投屏到平板、IPAD、艾派德
- 最佳实践 | 中文文案排版指北
- 【HAOI2018】染色【反向二项式反演】【NTT卷积】
- Windows编译环境搭建(VS2010)
- python loop until_python3-asyncio 学习笔记 3 -- run_until_complete
- Linux添加环境变量与GCC编译器添加INCLUDE与LIB环境变量
- vs 警告被视为错误
- [swift] LeetCode 35. Search Insert Position
- 史上最全 SQL 基础知识语法
- Vue导出excel表格设置样式的解决方案
- gps高斯utm_UTM坐标系统与高斯
- 商品库存的扣除过程中如何防止超卖?
- 无线网络技术导论笔记(第五讲)
- 【笔记】马克思主义哲学(二)-- 唯物论
- 前端下载zip出现文件打不开
- 日立6TB充氦硬盘详细规格、实物照片
- 多窗口自动排列横向纵向排列斜排列多窗口排列工具软件教学
- 面试官问:MySQL锁与事物隔离级别你知道吗?
- 北京市工作居住证办理流程以及资料
热门文章
- oracle 参数脚本,oracle 查看隐含参数脚本
- 通俗讲解c语言指针的作用,C语言指针讲解(史上最通俗最全面最经典)
- flask向html传函数,Flask----函数数据类型传参
- python图像对比_Python多种图像处理库的比较与比较
- 关于php反射机制的一些理解
- 如何修改was的java路径_在eclipse中修改tomcat的部署路径操作
- mysql强制指定索引_mysql强制索引和禁止某个索引
- java 短链接url_Java 网址短链接服务原理及解决方案
- php 持久化对象,php-对类持久化的引用
- php mysql 空值_PHP / MySQL插入空值