不知大家是否经常遇到这种情况:自己的项目有时会在没有连接到电脑时发生崩溃,好不容易发现的bug结果连接到电脑时又复现不出来了;又或者自己写的一个功能在开机启动时产生小bug导致崩溃,而刚启动的机器想让他打出log又不是那么容易。
此时我们有必要将程序的崩溃信息写入本地的文件,方便我们做bug的修复。
本项目为开源共同讨论的,奉上项目源码(有javadoc),以及打包好的jar包还有jar包的使用手册。

如果看官自行阅读源码,代码均有注释,应该简明易懂。
如果看官想直接使用,请看下文的使用手册。
推荐直接使用jar包的方式引用至项目中,这样不用每个项目都粘贴一下源码了。
*************************割*****************************
1.下载CrashHelper.rar,解压缩得到CrashHelper.jar文件,将文件拷贝到项目的libs文件夹下。并且右键点击CrashHelper.jar-->Build path-->Add To Build Path.如下图所示
<ignore_js_op><ignore_js_op> 
(注:由于编辑器不一样可能看见的视图效果会不一样,笔者此时用的是ADT v21.0.1   由google的adt-bundle-windows.rar中的eclipse直接集成)
新版的ADT可以直接将libs下的jar包或者库直接列入Android Dependencies中,则无需手动添加至Build Path了,更智能化了!
2.在自己项目中的自定义Application中的onCreate中使用以下2个方法:
public class MyApplication extends Application {
        /**
         *         (non-Javadoc)
         *         @see android.app.Application#onCreate()
         */
        @ Override
        public void onCreate() {
                super.onCreate() ;
                CrashHandler crashHandler = CrashHandler.getInstance() ;
                crashHandler.init(this) ;
        }
}
3.在Manifest.xml中将自定义的Application声明为程序主Application,并且别忘了配上写SD卡的权限
<ignore_js_op>

以上3个步骤后即可使用此jar包,自己的项目可以放在手机里随身带着,跑一天下来看看SD卡根目录下的/CrashInfos/文件夹下收集到的错误信息

<ignore_js_op><ignore_js_op> 
以下是附件
<ignore_js_op> CrashHelper.zip (799.77 KB, 下载次数: 237) 
************************************************************
细心的朋友可能发现了,此功能一旦加入了项目中去后,所有的崩溃的错误信息都保存到sd卡里了,对我们的连调反而极大降低了效率,所以笔者再次更新jar包,这样在保存文件的同时也将错误日志输出到了控制台,双管输出。如下图,注意看一下时间就知道了是同一个异常输出到了2个地方。
<ignore_js_op><ignore_js_op> 
现在将新的jar包和源码奉上
<ignore_js_op> NewCrashHelper.zip (1.04 MB, 下载次数: 784)

[开源类库/项目] android保存崩溃时的错误信息log至本地【源码+jar包+使用说...的更多相关文章

  1. 《android 导入第三方源码jar包遇到的坑》

    最近想做个app,里面需要有一个二维码扫描的功能,然后谷歌之后发现Zxing这个用的人好多,就看看怎么用: 然后就在github上拉下他们的源码,导入eclipse,然后编译之后导出为jar文件[用的 ...

  2. [转]Android事件分发机制完全解析,带你从源码的角度彻底理解(上)

    Android事件分发机制 该篇文章出处:http://blog.csdn.net/guolin_blog/article/details/9097463 其实我一直准备写一篇关于Android事件分 ...

  3. 【转】Android事件分发机制完全解析,带你从源码的角度彻底理解(下)

    转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/9153761 记得在前面的文章中,我带大家一起从源码的角度分析了Android中Vi ...

  4. Python的开源人脸识别库:离线识别率高达99.38%(附源码)

    Python的开源人脸识别库:离线识别率高达99.38%(附源码) 转https://cloud.tencent.com/developer/article/1359073   11.11 智慧上云 ...

  5. 解决SVN Cleanup时遇到错误信息:Cleanup failed to process the following paths:xxxxxxx Previous operation has not finished: run 'cleanup' if it was interrupted Please execute the 'Cleanup' command.

    解决SVN Cleanup时遇到错误信息:Cleanup failed to process the following paths:xxxxxxx Previous operation has no ...

  6. Maven自定义绑定插件目标:创建项目的源码jar

    <build> <plugins> <!-- 自定义绑定,创建项目的源码jar --> <plugin> <groupId>org.apac ...

  7. Android逆向之旅---反编译利器Apktool和Jadx源码分析以及错误纠正

    Android逆向之旅---反编译利器Apktool和Jadx源码分析以及错误纠正 http://blog.csdn.net/jiangwei0910410003/article/details/51 ...

  8. Android项目如果要将自己写的类写成要单独打成jar包?

    需求条件: 自己没做过android,公司android开发临时有事请假了,老板说让我研究研究,反正都是java.我心里"XXXXXX".这篇用来自己做个记录,老手请略过,Andr ...

  9. android高仿抖音、点餐界面、天气项目、自定义view指示、爬取美女图片等源码

    Android精选源码 一个爬取美女图片的app Android高仿抖音 android一个可以上拉下滑的Ui效果 android用shape方式实现样式源码 一款Android上的新浪微博第三方轻量 ...

随机推荐

  1. Raspberry Pi 3 FAQ --- connect automatically to 'mirrors.zju.edu.cn' when downloading and how to accelerate download

    modify the software source: The software source is a place where several free application for linux ...

  2. css006 文本格式化

    css006 文本格式化 文本格式化:字体(font-family).颜色(color).字号(font-size). 行距(line-height).粗体(font-weight).斜体(font- ...

  3. 整数分解 && 质因数分解

    输入整数(0-30)分解成所有整数之和.每四行换行一次. 一种方法是通过深度优先枚举出解.通过递归的方式来实现. #include <stdio.h> #include <strin ...

  4. 运算符++,--的使用及 while循环测试的用处

    前++与后++的区别: b=3+(++a);//a=a+1;b=3+a; b=3+(a++);//b=3+a;a=a+1; while (true)( 循环语句,可以实现程序的多次测试) { Cons ...

  5. centos6.4 搭建svn服务器

    SVN作为新一代代码版本管理工具,有很多优点,管理方便,逻辑明确,安全性高,代码一致性高.SVN数据存储有两种方式,BDB(事务安全表类型)和FSFS(一种不需要数据库的存储系统),为了避免在服务器连 ...

  6. Div内有ul li元素,Div设置高度100%,谷歌IE下li过多会显示滚动条,而火狐下就会滚动条就不起作用,li会撑大Div

    产品上也许是用了过多iframe问题,自己做了demo没有这种情况 解决办法: 设置Div的display样式为-moz-inline-grid -moz-代表火狐私有属性,使用自己的div样式就可以 ...

  7. Java字节流与字符流基本操作

    在程序中所有的数据都是以流的方式进行传输或保存的,程序需要数据时要使用输入流读取数据,而当程序需要将一些数据保存起来时,就要使用输出流. 在java.io包中流的操作主要有字节流.字符流两大类,两类都 ...

  8. CentOS6.x安装配置nginx

    nginx安装 nginx的官网:http://nginx.org/   相应下载页面:http://nginx.org/en/download.html   我这里使用nginx的yum在线安装 w ...

  9. centos忘记开机密码

    系统:centos6.6,忘记开机密码,进入单用户模式进行重置,以下为操作过程. 1. reset(重启)Linux系统,在出现如下图的界面时,请点Enter键,确保一定要快,只存在几秒.. 2.点击 ...

  10. 数据库操作事务IsolationLevel 枚举

      成员名称 说明   Chaos 无法覆盖隔离级别更高的事务中的挂起的更改.   ReadCommitted 在正在读取数据时保持共享锁,以避免脏读,但是在事务结束之前可以更改数据,从而导致不可重复 ...