zl程序教程

您现在的位置是:首页 >  其他

当前栏目

Unity打包符号表 使用ndk addr2line.exe+符号表 将崩溃内存地址解析成函数名

打包 函数 解析 Unity exe 崩溃 ndk 使用
2023-09-11 14:22:32 时间

原文链接:Unity接入Bugly+符号表待上传_逍遥游侠的博客-CSDN博客_bugly unity 符号表

         之前在工作中遇到了一个问题,程序宕机,但是只有内存地址,无法定位宕机bug。后来参考了一下上面的文章,需要使用jdk工具、符号表so文件把内存地址转换成对应的函数名。

          1.需要配置上Addr2linePath的路径,这个改成你自己的路径就可以了。

         2.符号表的路径,符号表发布出来的时候是一个zip文件要把它解压出来,里面会有两个文件:arm64-v8a(64位)、armeabi-v7a(32位)不过unity默认打包出来的都是64位的程序,所以这个前面加上你的真实路径+arm64-v8a\libil2cpp.sym.so就可以了。

        3.后面的参数写内存地址,用空格隔开。 然后点击执行就可以解析出内存地址对应的函数堆栈了。

echo off
 
echo Please set up parameters first.
 
set Addr2linePath=D:\UnityTools\android-ndk-r19-windows-x86_64\android-ndk-r19\toolchains\llvm\prebuilt\windows-x86_64\bin\aarch64-linux-android-addr2line.exe
set SymbolPath=D:\survive_game\GameAmongUs\Unity_Project\build\android\arm64-v8a\libil2cpp.sym.so

%Addr2linePath% -f -C -e %SymbolPath% 0x23f696c 0x1a92cec


pause
echo on