如何在模拟器中为 MonoTouch 应用程序生成 .dSYM?

Posted

技术标签:

【中文标题】如何在模拟器中为 MonoTouch 应用程序生成 .dSYM?【英文标题】:How do I generate .dSYM for MonoTouch app in Simulator? 【发布时间】:2012-10-22 11:25:12 【问题描述】:

我想在 Instruments 没有 iPad 的情况下分析 MonoTouch 应用程序。我可以分析为模拟器编译的应用程序,但没有符号就没有乐趣:

在项目构建设置中没有使用 dSYM 生成 IPA 的选项 - 看起来它们仅在为设备编译时可用。

我只想要一个用于模拟器的支持 MonoTouch 的 dSYM。 这可能吗?

【问题讨论】:

本帖镜像于Xamarin Forums。 【参考方案1】:

很遗憾,这是不可能的,因为在模拟器中我们 JIT 管理代码。这意味着在执行进程之前不可能知道方法在内存中的位置,并且 Instruments 不支持 MonoTouch 在运行时通知 JIT 方法所需的机制 [1]。

[1] 在此处查看对回复的最后评论:Is it possible to notify DTrace on Mac OS X of dynamically generated code?

【讨论】:

【参考方案2】:

看看这个 - miguel 最近写了一篇博客文章来编译 aot 以在 mac 上进行分析 - 我想这会给你你正在寻找的东西:

Using Instruments to profile Mac apps built with Mono

【讨论】:

有意思,我试试看。

以上是关于如何在模拟器中为 MonoTouch 应用程序生成 .dSYM?的主要内容,如果未能解决你的问题,请参考以下文章

如何从终端在 iOS 模拟器中运行 MonoTouch 应用程序?

如何加快 MonoTouch 编译时间?

在 monotouch/monodroid 中使用 mocks 进行单元测试

MonoTouch 4.0 使用模拟器抛出 ReflectionTypeLoadException

MonoTouch 5.0:获取 MonoDevelop 以使用 iOS 5 SDK/模拟器

从命令行自动执行 iOS monotouch GUI 测试