在开发android的过程如果报错,可以在logcat上看到错误信息,但是在发布以后,由于用户的手机环境,平台版本各不相同,即使发生了停止运行,给用户很坏的体验,我们也不知道。基于此,我们就需要Application Crash Reports for Android(ACRA)这个开源库,这个库能够上传异常堆栈信息到服务器,方面我们找出app问题的存在,然后相应解决问题,从而提高用户体验。
首先提供一个下载地址http://download.csdn.net/detail/lovexieyuan520/8582261,当然也可以去官网下载https://github.com/ACRA,这上面有很多的文档和源码,有兴趣的可以去看看!
下面是一个详细的集成步骤,方面大家把ACRA集成到自己的项目中去。
首先、我下载以后会得到一个acra-4.5.0.jar的文件,然后把这个文件拷贝到libs文件夹下面去,把这个jar包加入到Build Path中去,相信只要是开发android的,这个步骤应该会吧。
然后、新建一个UIApplication,继承于Application,代码如下:
@ReportsCrashes(formKey = "",customReportContent={}, formUri = "")
public class UIApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
ACRA.init(this);
}
}
customReportContent是你要上传的字段名,默认有几十个字段,我们可以在这里自定义需要上传的字段,例如
customReportContent={ReportField.PHONE_MODEL,
ReportField.STACK_TRACE,
ReportField.APP_VERSION_CODE,
ReportField.ANDROID_VERSION,
ReportField.PACKAGE_NAME,
ReportField.USER_CRASH_DATE}
formUri是你要上传的地址。最后、在AndroidManifest.xml上application节点android:name属性写上这个UIApplication的路径,大功告成。
在后台服务器需要接受这个上报的异常,我就不写了,不属于android的范畴了,大家自己写,很简单!!!