Android Breakpad dmp文件已损坏/不完整
我正在为Android应用程序的本机崩溃报告集成breakpad,该应用程序已经有一个内置在单个so中的重要本机代码库。我已经将breakpad静态库添加到该库中,并且我能够在报告本机崩溃时生成dmp文件。但是,本机dmp很小(3-4 KB),minidump_stackwalker会出现以下错误:Android Breakpad dmp文件已损坏/不完整,android,debugging,google-breakpad,Android,Debugging,Google Breakpad,我正在为Android应用程序的本机崩溃报告集成breakpad,该应用程序已经有一个内置在单个so中的重要本机代码库。我已经将breakpad静态库添加到该库中,并且我能够在报告本机崩溃时生成dmp文件。但是,本机dmp很小(3-4 KB),minidump_stackwalker会出现以下错误: myadav11$ minidump_stackwalk 5f9221b3-75f2-c305-2dde0eb7-1724e335.dmp minidump.cc:4811: INFO: Mini
myadav11$ minidump_stackwalk 5f9221b3-75f2-c305-2dde0eb7-1724e335.dmp
minidump.cc:4811: INFO: Minidump opened minidump 5f9221b3-75f2-c305-2dde0eb7-1724e335.dmp
minidump.cc:4931: INFO: Minidump not byte-swapping minidump
minidump.cc:5414: INFO: GetStream: type 15 not present
minidump.cc:5414: INFO: GetStream: type 7 not present
minidump.cc:5414: INFO: GetStream: type 7 not present
minidump.cc:5414: INFO: GetStream: type 1197932545 not present
minidump.cc:5414: INFO: GetStream: type 6 not present
minidump.cc:5414: INFO: GetStream: type 1197932546 not present
minidump.cc:5414: INFO: GetStream: type 4 not present
minidump.cc:5414: INFO: GetStream: type 14 not present
minidump.cc:5414: INFO: GetStream: type 5 not present
minidump.cc:5414: INFO: GetStream: type 3 not present
minidump_processor.cc:158: ERROR: Minidump 5f9221b3-75f2-c305-2dde0eb7-1724e335.dmp has no thread list
minidump_stackwalk.cc:97: ERROR: MinidumpProcessor::Process failed
minidump.cc:4783: INFO: Minidump closing minidump
myadav11$
我有一个Android breakpad测试应用程序,它使用相同的编译器和链接器标志,能够生成一个大约300KB的正确dmp文件。我曾尝试使用Android StudioC++调试程序调试BrutPad代码,我注意到子进程的“破碎”产生,错误完成,并且似乎很容易同时将调试器附加到子进程。
我已经看过breakpad支持,有人提到类似的问题,但没有讨论解决方案。任何帮助都将不胜感激。
最新的breakpad主分支已修复。如果无法为ARM linux端口转储浮点寄存器,则该问题将继续下去,问题可追溯到“if(sys_ptrace(ptrace_GETREGSET,tid,(void*)NT_FPREGSET,(void*)和io)=-1{return false;}”行,在最新的主程序中修复