如何获得Android的崩溃日志

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何获得Android的崩溃日志相关的知识,希望对你有一定的参考价值。

 每个android应用都是由一个Application和多个activity或者server构成.应用启动时,会首先启动Application.在Application的onCreate方法中调用

1Thread.setDefaultUncaughtExceptionHandler(handler);  

就可以捕获导致应用崩溃的错误信息了.

首先应用要有读写sd卡权限

系统错误后要还是要提示用户系统错误.这个是崩溃activity,

参考技术A 是在开发期间获取的吗?把手机连接到开发环境上,把你的APP发布到手机上运行,当手机发生崩溃后,打开开发环境里的logcat就可以了看到了。

常用获取Android崩溃日志和IOS崩溃日志的几种方法

一:前言

在日常测试app时,经常会遇到崩溃问题,测试快速抓取到崩溃日志可以有效方便开发进行定位,快速解决问题所在
测试做到测试分析,定位是非常重要的,这也是判断一个测试能力指标的一大维度。

 

二:Android崩溃日志

 

一、通过adb logcat获取

# 清除日志,新手上路时,日志内容很多,对于能毕现的日志,可以先清除后重新获取
adb logcat -c
# 然后再次运行崩溃操作,再抓取日志
# 存储日志到当前目录下的 carsh.log 中
adb logcat -d *:W > crash.log 
# W指的是警告以上日志
# 这个日志文件包含了所有打印的日志,需要自己筛选下崩溃日志,比如搜索 begin、crash、Exception
# 为了更精确的筛选日志,可以加入筛选条件
adb logcat -d *:W grep “包名” >crash.log

二、通过Android Studio

在logcat中查看实时日志,需要选择连接的手机和应用包名

三、通过adb shell dumpsys dropbox命令获取

封装成shell脚本,可以快速打印最新的崩溃日志

#!/bin/bash
# path="/data/system/dropbox"   # 在手机这个目录下存储了崩溃日志
newest_time=$(adb shell dumpsys dropbox | grep data_app_crash | awk END print $1,$2)
adb shell dumpsys dropbox --print $newest_time
# echo -e "时间是:$newest_time"
 

四、获取ANR日志

# 在/data/anr/目录下存储所有了ANR日志
adb pull /data/anr/ ~/Downloads

 

五、常见日志类别

常见的异常:javaException(runtimeException):

NullPointerException-空指针引用异常

ClassCastException-类型强制转换异常。

IllegalArgumentException-传递非法参数异常。

ArithmeticException-算术运算异常

ArrayStoreException-向数组中存放与声明类型不兼容对象异常

IndexOutOfBoundsException-下标越界异常

NegativeArraySizeException-创建一个大小为负数的数组错误异常

NumberFormatException-数字格式异常

SecurityException-安全异常

UnsupportedOperationException-不支持的操作异常

 

 

 

 

二:iOS崩溃日志

一、iOS手机上获取崩溃日志

 路径:设置 -> 隐私 -> 分析 -> 分析数据

这里可以获取手机上的所有崩溃日志。不过日志是密文,需要在xcode中打开,会自动翻译成明文。

二、在xcode中打开崩溃日志

 打开xcode,菜单栏选择window,选择 Devices and Simulators,点击View Device Logs,可以看到日志列表。

在日志中主要看Last Exception Backtrace(即发生崩溃的原因,也是我们要研究的重点) 默认是密文,打开后xcode会翻译成明文,需要等待几秒。

技术图片

 

 

三、通过iTunes同步后获取崩溃日志

 路径:

Mac OS X: ~/Library/Logs/CrashReporter/MobileDevice/
可以看到所有和该电脑同步过的设备的崩溃日志(.crash文件)

 

 

 

以上是关于如何获得Android的崩溃日志的主要内容,如果未能解决你的问题,请参考以下文章

常用获取Android崩溃日志和IOS崩溃日志的几种方法

Android崩溃日志注释

如何获取 android 的系统日志 logcat

如何查看发布 apk 的崩溃日志

iOS测试随笔崩溃日志获取

iOS测试随笔崩溃日志获取