Android dump .so 文件crash log

众所周知,在android系统上,有时候我们遇到so文件的crash仅仅能打log,可是非常多时候并不知道crash在什么地方,幸运的是crash后,一般能够产生一个.dmp文件。

我们能够依据这个文件来得到更为具体的statck trace。

主要用的就是google提供的一些方法,命令太复杂,非常easy出错,所以我写了一个python脚本,简化步骤。

详情能够參考 https://code.google.com/p/google-breakpad/wiki/LinuxStarterGuide


#! /usr/bin/env python


import os
import sys

if len(sys.argv) < 3:
    print("please check your parameter")
    exit(-1)

soFile = sys.argv[1]
dmpFile = sys.argv[2]

print soFile,
print dmpFile

symFile = soFile + ".sym"

#dumple sym file
os.system("./dump_syms " + soFile  + " > " + symFile)

#get directory information
ret = os.popen("head -n1 " + symFile).read()
arry = ret.strip().split(" ")
dirName = arry[3]
symPath = "./symbols/" + soFile + "/" + dirName

#create directory
os.system("mkdir -p " + symPath)
os.system("mv " + symFile + " " + symPath)

#minidump to log file
os.system("./minidump_stackwalk " + dmpFile + " ./symbols > crashlog")



原文地址:https://www.cnblogs.com/lcchuguo/p/4086430.html