[技术博客]使用adb命令获取app(游戏)错误和警告日志
adb命令的使用
直接在命令行中输入:
adb logcat *:W
注意:这句命令的意思是显示所有优先级大于等于警告(Warning)的日志,查找崩溃问题一般用:
adb logcat *:E
注意:这句命令的意思是显示所有优先级大于等于错误(Error)的日志。
日志的优先级一般有如下几档,由低到高:
1、VERBOSE,一般信息,使用Log.v输出颜色为黑色且日志级别大于等于VERBOSE的信息;
2、DEBUG,调试信息,使用Log.d输出颜色为蓝色且日志级别大于等于DEBUG的信息;
3、INFO,标识信息,使用Log.i输出绿色且日志级别大于等于INFO的信息;
4、WARN,警告信息,使用Log.w输出橙色且日志级别大于等于WARN的信息;
5、ERROR,错误信息,使用Log.e输出红色且日志级别大于等于ERROR的信息。
我们的项目中只需要用到Warning级别的日志和Error级别的日志就可以了。
筛选我们需要的日志
直接输入以上指令会输出所有指令的日志,种类繁多,不适合我们筛选需要的游戏日志,这个时候需要用到GREP
指令进行筛选。
logcat | grep "应用的包名"
输出到文件中
由于项目中python文件需要获取日志信息,可以把生成的控制台日志重定向到文件中:
adb logcat *W |grep "应用的包名">adb_log.txt
同时在python文件中使用QThread
开启线程读取该线程文件,如果有错误报告即可反馈到界面中。
注意:保证线程安全。