我试图挂接一个实时崩溃报告服务,如airbrake,bugsense或TestFlight'sSDK,但我想知道使用LLVM编译器编译您的MonoTouch项目时崩溃生成的崩溃报告是否有用。使用LLVM编译时,调试符号是否有用?
当你正在配置iPhone版本时,如果你进入proj settings> iPhone Build> Advanced选项卡,它会显示“实验性,与调试模式不兼容”。这就是为什么我从崩溃报告中质疑堆栈跟踪的原因。
我试图挂接一个实时崩溃报告服务,如airbrake,bugsense或TestFlight'sSDK,但我想知道使用LLVM编译器编译您的MonoTouch项目时崩溃生成的崩溃报告是否有用。使用LLVM编译时,调试符号是否有用?
当你正在配置iPhone版本时,如果你进入proj settings> iPhone Build> Advanced选项卡,它会显示“实验性,与调试模式不兼容”。这就是为什么我从崩溃报告中质疑堆栈跟踪的原因。
有几点考虑这里:
一)使调试您构建:
这会导致更大,更慢的应用程序中包含大量您不希望人们访问的数据(例如,如果担心逆向工程)。对于发布它是一个没有赢得大家的情况。使用LLVM编译器将不会调试模式下工作
B)。这通常不是问题,因为在调试时,您可能希望构建过程尽可能快(并且LLVM构建起来较慢)。一个有问题的案例是如果你的bug只在LLVM版本上显示。
c)托管堆栈跟踪的可用性不需要调试符号。它们是从.dll和.exe文件中提供的元数据构建而成的。但是,当调试符号可用时,堆栈跟踪将包括每个堆栈帧的行号和文件名。 d)我从来没有使用过你提到过的工具,但我相信它们是有用的:-)你可能想问一下关于它们的具体问题(关于MonoTouch)。否则,我认为值得测试,看看细节的级别是否有所不同(如果额外的细节对你有帮助)。国际海事组织我怀疑它会给你带来比实际“运输”“调试”版本“成本”更多的成本。
这是很好的来发表您以上的经验:在这里,MonoTouch的邮件列表和/或博客条目:-)
是的,我希望有人能告诉我,让我不会有自己测试一下。猜猜我运气不好。 –