为什么我的Monotouch应用程序不会在仪器中表现出来?

时间:2012-07-07 23:46:52

标签: xamarin.ios profiling instruments

我编译了我的App for Debug / iPhone,打开了用于CPU时间分析的Instruments,将它连接到我的iPad,选择了我的应用程序(MainApp)作为目标,记录了一个仪器会话然后停止了它。

没有符号化的功能名称。它们看起来都像这样(0x133de3,0x2a1be7等)。

我去了仪器 - >文件 - >重新符号化文件...我选择了我的应用并选择了定位。我指出了我认为是在这条路径上由monotouch生成的正确符号文件: 桌面/ iPadApp / MainApp / bin中/ iPhone /调试/ MainApp.app.dSYM

但是,当我单击“打开”时,它会显示“无法使用所选符号 - 重新符号化需要MainApp.app.dSYM和MainApp具有匹配的UUID。”

我不确定这意味着什么或如何解决问题。我在Snow Leopard上运行XCode 4.2,MonoDevelop 3.0.3.2和Monotouch 5.2.12。

任何帮助将不胜感激!谢谢!

1 个答案:

答案 0 :(得分:1)

这个答案是由米格尔提供的......

假设您的应用程序名为“Foo”,您可以检查二进制文件的UUID,以确保它们彼此对应:

$ dwarfdump --uuid Foo.app/Foo
UID: A5B46B4C-F5A1-3CDD-82B0-02CB7222F8CC (armv7) Foo.app/Foo
$ dwarfdump --uuid Foo.app.dSYM
UID: A5B46B4C-F5A1-3CDD-82B0-02CB7222F8CC (armv7) Foo.app.dSYM/Contents/Resources/DWARF/Foo

如果它们不匹配,则表示您没有最新的构建版本,并且其中一个文件已过时。