報錯如下圖,注意,標紅的三處
使用的il2cpp和架構是arm64-v8a
那我們就可以根據這些去找對應的符號表,在unity安裝目錄下
Unity2020.3.33f1\Editor\Data\PlaybackEngines\AndroidPlayer\Variations\il2cpp\Release\Symbols\arm64-v8a
找到libunity.sym.so。拷貝到下一步的NDK目錄下。
找到NDK中arm-linux-androideabi-addr2line.exe目錄
//根據打包處理架構選擇不同addr2line
//arm處理器
xxx\toolchains\arm-linux-androideabi-4.9\prebuilt\windows-x86_64\bin\
執行:arm-linux-androideabi-addr2line.exe -f -C -e so的地址 報錯內存地址
如:arm-linux-android-addr2line -f -C -e libunity.sym.so 0x4cdfec//aarch64
或者xxx\toolchains\aarch64-linux-android-4.9\prebuilt\windows-x86_64\bin\
執行:aarch64-linux-androideabi-addr2line.exe -f -C -e so的地址 報錯內存地址
如:aarch64-linux-android-addr2line -f -C -e libunity.sym.so 0x4cdfec
效果如下: