Unity打包符号表 使用ndk addr2line.exe+符号表 将崩溃内存地址解析成函数名
之前在工作中遇到了一个问题,程序宕机,但是只有内存地址,无法定位宕机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
相关文章
- IntelliJ IDEA 打包Maven 构建的 Java 项目
- springboot 项目maven 打包错误
- mysql 打包表在phpmyadmin提示正在使用中..
- Android Studio 打包及引用 AAR(可能是史上最详细的 )
- vue.js - 解决vue-cli打包后自动压缩代码
- Ubuntu上使用Docker打包镜像
- 用source函数代替繁冗的R语言打包过程
- linux 打包为zip压缩包
- intellij idea 2021.2 打包并上传运行一个spring boot项目(spring boot 2.5.4)
- Atitit maven配置pom文件 配置法v2 t33 目录 1. Maven打包war原理1 1.1. 在target目录生成war包ori目录。。。里面就是所有的资源1 1.2. 去掉
- Atitit.程序包装exe启动器 打包 发布 设计 -生成exe java
- vue项目打包后打开空白解决办法
- Py之cx_Freeze:cx_Freeze简介(程序打包软件)、安装、使用方法、案例应用(实现机器人在线24小时智能翻译软件打包)之详细攻略
- 008-ant design roadhogrc 打包
- tar 打包文件
- Android解包命令:unpackbootimg与打包命令:mkbootimg使用