dSYM文件夹和mSYM文件夹有什么区别?

时间:2018-12-13 11:04:07

标签: c# iphone xamarin.ios crash

我正在使用Xamarin.iOS应用程序,该应用程序通过临时流程进行部署时会崩溃。正如Apple的documented一样,当应用程序崩溃时,会生成一个.crash文件。该文档还指出,作为开发人员,我们必须保留dSYM文件夹。

以我为例,我(仅?)有一个mSYM文件夹。

问题

MyApplicationName.App.dSYM文件夹和MyApplicationName.App.mSYM文件夹之间有什么区别?

1 个答案:

答案 0 :(得分:1)

  

.dSYM

dSYM 文件是“调试符号文件”。在项目的构建设置中启用“ Strip Debug Symbols”设置时会生成该文件。

enter image description here

启用此设置后,将从生成的已编译二进制文件中删除对象的符号名称(要尝试防止的许多对策之一是黑客/黑客对您的代码进行反向工程,以及针对二进制文件大小进行的其他优化等) )。

dSYM文件可能会在每次编译您的应用程序时更改(可能由于日期戳记而每次更改),并且与项目设置无关。

  

.mSYM

mSYM表示MonoSymbolArchive。它包含mono的调试信息。

在csproj文件中编辑iPhone版本配置,使其包含<MonoSymbolArchive>True</MonoSymbolArchive>,它将在bin / iPhone / Release / .mSYM中生成符号数据