【Android】 -- 使用UncaughtExceptionHandler捕捉全局异常
在综合统计SDK(欧盟统计局的朋友,百度统计)之后。有一个非常有利的功能测试:错误分析。此功能可以在程序的执行中遇到崩溃(runtimeException)反馈给server,帮助开发者提高产品。多功能适配器机。
然而在公司android开发中不集成这些SDK,那应该怎么实现这种功能呢?以下让我们来看下怎样使用UncaughtExceptionHandler来捕获异常。
首先实现创建一个类,实现UncaughtExceptionHandler接口。代码例如以下:
public class CrashHandler implements UncaughtExceptionHandler { @Override
public void uncaughtException(Thread thread, Throwable ex) {
//处理异常
Log.e("崩溃",thread.getName()+ex.toString());
//发送到server
//dialog提醒
} }
有处理代码了。然后就须要触发它的地方:
在程序的入口activity的oncreate中加入:
Thread.setDefaultUncaughtExceptionHandler(new CrashHandler());
是不是very easy啊!
版权声明:本文博客原创文章。博客,未经同意,不得转载。
【Android】 -- 使用UncaughtExceptionHandler捕捉全局异常的更多相关文章
- Android使用UncaughtExceptionHandler捕获全局异常
Android系统的“程序异常退出”,给应用的用户体验造成不良影响.为了捕获应用运行时异常并给出友好提示,便可继承UncaughtExceptionHandler类来处理.通过Thread.setDe ...
- 【转】 Android自定义捕获Application全局异常
大家都知道,现在安装Android系统的手机版本和设备千差万别,在模拟器上运行良好的程序安装到某款手机上说不定就出现崩溃的现象,开发者个人不可能购买所有设备逐个调试,所以在程序发布出去之后,如果出现了 ...
- WPF 捕捉全局异常
public App() { //首先注册开始和退出事件 this.Startup += new StartupEventHandler(App_Startup); this.Exit += new ...
- [四]SpringBoot 之 捕捉全局异常
在class注解上@ControllerAdvice, 在方法上注解上@ExceptionHandler(value = Exception.class),具体代码如下: package me.shi ...
- winform捕捉全局异常
/// <summary> /// 应用程序的主入口点. /// </summary> [STAThread] static void Main() { try { //设置应 ...
- delphi 捕捉全局异常错误的方法
private { Private declarations } public procedure GlobalExceptionHandler(Sender: TObject; E: ...
- android中全局异常捕捉
android中全局异常捕捉 只要写代码就会有bug,但是我们要想办法收集到客户的bug.有第三方bugly或者友盟等可以收集.但是,android原生就提供了有关收集异常的api,所以我们来学习一下 ...
- Android捕获全局异常
Android捕获全局异常 程序避免不了出现bug,导致程序崩溃,为了尽量不影响用户体验,可以全局捕获异常 效果图 异常捕获处理前 异常捕获处理后(将程序重新启动) 捕获异常的工具类 package ...
- Android应用捕获全局异常自定义处理
[2016-06-30]最新的全局异常处理DRCrashHandler已经集成在DR_support_lib库中 具体请看: https://coding.net/u/wrcold520/p/DR_s ...
随机推荐
- IP数据包结构
Linux 网络编程——IP 数据报格式详解 http://www.linuxidc.com/Linux/2015-04/116149.htm
- BZOJ 3282: Tree( LCT )
LCT.. -------------------------------------------------------------------------------- #include<c ...
- goahead cgi 及出现的问题解决
1. route.txt 配置cgi路径 route uri=/cgi-bin dir=/web handler=cgi 2.交叉编译生成cgi goahead 源码路径下 ./test/c ...
- ZOJ 3211 Dream City DP 01背包 经典问题
题目大意:JAVAMAN 到梦幻城市旅游见到了黄金树,黄金树上每天回结出金子.已经有n棵树,JAVAMAN要停留m天,每天只能砍掉一棵树,砍掉树后就能得到树上的黄金.给定n棵树上原有的黄金a[i]和每 ...
- android getDecorView()的作用
decorView是window中的最顶层view,可以从window中通过getDecorView获取到decorView.通过decorView获取到程序显示的区域,包括标题栏,但不包括状态栏.间 ...
- 深入JDK源码之Arrays类中的排序查找算法(转)
原文出处: 陶邦仁 binarySearch()方法 二分法查找算法,算法思想:当数据量很大适宜采用该方法.采用二分法查找时,数据需是排好序的. 基本思想:假设数据是按升序排序的,对于给定值x,从序列 ...
- 另一种数据库连接字符串的编写方式(Sqlbuilder)
SqlConnectionStringBuilder builder = new SqlConnectionStringBuilder(); builder.DataSource = "&q ...
- sizeof与strlen的区别 浅谈
1.sizeof operator sizeof是C语言的一种单目操作符,如C语言的其他操作符++.- - 等,它并不是函数. Queries size of the object or type. ...
- 演练5-4:Contoso大学校园管理系统4
在之前的教程中,我们已经完成了学校的数据模型.现在我们将读取和显示相关数据,请理解EF加载导航属性的方式. 一.Lazy.Eager.Explicit数据加载 使用EF为实体中的导航属性加载相关数据, ...
- 基于visual Studio2013解决C语言竞赛题之0701排队输出
题目 解决代码及点评 #include <stdio.h> #include <stdlib.h> void swap(int *a,int *b) { *a = *a ...