Android 捕获 crash

private void initializeCrashHandlers() {    // This crash handler can take care of anything, but you MUST close the process at the end if you are    // not throwing an exception back to the default thread exception handler. To do this, we first get the    // original thread handler and pass the exception to the previous thread handler (the only way this has    // been found to work so far).    final Thread.UncaughtExceptionHandler originalDefaultUncaughtExceptionHandler =            Thread.getDefaultUncaughtExceptionHandler();    final Thread.UncaughtExceptionHandler scThreadExceptionHandler = new Thread.UncaughtExceptionHandler() {        @Override        public void uncaughtException(Thread thread, Throwable ex) {            // take care of anything else here...            for (Crashable crashable : mCrashables) {                crashable.onApplicationCrash(AppContext.get(), thread, ex);            }

originalDefaultUncaughtExceptionHandler.uncaughtException(thread, ex);        }    };

// Set an uncaught exception handler to take care of cases where you want to do stuff before app crashes    // This is also compatible with HockeyApp.    Thread.setDefaultUncaughtExceptionHandler(scThreadExceptionHandler);

ExceptionReportingProvider.initialize(GracefulExceptionHandler.getInstance(), new ExceptionReporter());}
时间: 2024-10-19 14:33:32

Android 捕获 crash的相关文章

Android Native crash日志分析

在Android应用crash的类型中,native类型crash应该是比较难的一种了,因为大家接触的少,然后相对也要多转几道工序,所有大部分对这个都比较生疏.虽然相关文章也有很多了,但是我在刚开始学的过程中还是遇到一些问题,下面一一记录,以便将来翻阅. 分析native crash 日志需要几个东西: addr2line,objdump,ndk-stack等几个工具 带symbols的so文件 log log native crash的日志都是从一行星号(*** *** *** *** ***

Android程序crash处理

Android程序crash处理 时间 2014-11-24 13:45:37  CSDN博客 原文  http://blog.csdn.net/allen315410/article/details/41444053 主题 Android 在实际项目开发中,会出现很多的异常直接导致程序crash掉,在开发中我们可以通过logcat查看错误日志,Debug出现的异常,让程序安全的运行,但是在开发中有些异常隐藏的比较深,直到项目发布后,由于各种原因,譬如android设备不一致等等,android

获取Android崩溃crash信息并写入日志发送邮件

一.实现Thread.UncaughtExceptionHandlerUnChecked异常发生时,由于没有相应的try…catch处理该异常对象,所以Java运行环境将会终止,程序将退出,也就是我们所说的Crash.Java API提供了一个全局异常捕获处理器,Android应用在Java层捕获Crash依赖的就是Thread.UncaughtExceptionHandler处理器接口,通常我们只需实现这个接口,并重写其中的uncaughtException方法,在该方法中可以读取Crash的

Android程序Crash异常处理

在写程序时,肯定会碰到各种问题,在解决这些问题肯定要去看控制台打印的异常信息,根据控制台打印的异常信息来进行针对性的解决. 那么要解决程序运行在用户手机上崩溃的问题,必须得找到问题的原因.因此就要收集崩溃信息,也就是log日志. Android程序Crash时我们可以做的操作: 1.将Crash信息存到本地,然后上传到服务器,根据上传的异常信息进行针对性的处理: 2.系统自带的Crash界面是很不友好的,我们可以自定义程序Crash后的界面,做的友好点: 关于以上2中操作方式,自己的见解: 1.

Android捕获View焦点事件,LinearLayout结合HorizontalScrollView实现ViewPgaer和选项卡Tabs联动

 <Android捕获View焦点事件,LinearLayout结合HorizontalScrollView实现ViewPgaer和选项卡Tabs联动.> 如图: package zhangphil.tabs; import java.util.ArrayList; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.

[翻译]如何安装ACRA-一个Android应用Crash跟踪系统

[翻译]如何安装ACRA-一个Android应用Crash跟踪系统 -在你自己的服务器上 How to setup ACRA, an Android Application Crash Tracking system, on your own host 原文地址: http://inthecheesefactory.com/blog/how-to-install-and-use-acra-android/en 开发一个手机应用有如此多的限制,比如硬件限制(CPU,内存,电池等等).如果你的代码不

Android程序Crash时的异常上报

转载请注明来源:http://blog.csdn.net/singwhatiwanna/article/details/17289479 前言 大家都知道,android应用不可避免的会发生crash,无论你的程序写的多完美,总是无法完全避免crash的发生,可能是由于android系统底层的bug,也可能是由于不充分的机型适配或者是糟糕的网络状况.当crash发生时,系统会kill掉你的程序,表现就是闪退或者程序已停止运行,这对用户来说是很不友好的,也是开发者所不愿意看到的,更糟糕的是,当用户

android捕获程序异常退出

今天看到迅雷动漫里面一个CrashHandler 的类,我猜是崩溃处理类.进去一看,果然.顺便学习一下. Android系统的"程序异常退出",给应用的用户体验造成不良影响.为了捕获应用运行时异常并给出友好提示,便可继承UncaughtExceptionHandler类来处理.通过Thread.setDefaultUncaughtExceptionHandler()方法将异常处理类设置到线程上即可. 代码: public class CrashHandler implements Un

Android捕获崩溃异常

开发中最让人头疼的是应用突然爆炸,然后跳回到桌面.而且我们常常不知道这种状况会何时出现,在应用调试阶段还好,还可以通过调试工具的日志查看错误出现在哪里.但平时使用的时候给你闹崩溃,那你就欲哭无泪了. 那么今天主要讲一下如何去捕捉系统出现的Unchecked异常.何为Unchecked异常呢,换句话说就是指非受检异常,它不能用try-catch来显示捕捉. 我们先从Exception讲起.Exception分为两类:一种是CheckedException,一种是UncheckedException