22

更新到 xCode 4.5 并且在分析我的应用程序符号名称时不再显示类或对象,但显示内存地址见下文。

0x2fd42e13
0x38014448

我曾经看到以下

main
NSManagedObjectContext

当我可以看到类名时,我可以在扩展细节中追踪问题。现在扩展细节显示与 0x2fd42e13 相同的内容。

4

9 回答 9

40

为了解决我的问题,我不得不告诉 Instruments 我的二进制文件在哪里,因为它由于某种原因丢失了它的踪迹。

1.像往常一样运行 Instruments 以获取屏蔽数据。

在此处输入图像描述

2.在 Project Navigator 中,展开 Products 文件夹并单击您的应用程序(提供程序 (.appex) 或应用程序 (.app)。如果您的文件检查器不可见,请右键单击该应用程序并单击“显示文件检查器”

在此处输入图像描述

3.在屏幕右侧,您现在应该可以看到二进制文件的文件检查器。对面单击“完整路径”属性,然后单击“复制”。

在此处输入图像描述

4.回到仪器并转到File->Symbols

在此处输入图像描述

5.在左侧下拉您的应用程序或提供程序,然后单击旁边带有点的项目(它应该与您的应用程序具有相同的名称)

在此处输入图像描述

6.你会注意到二进制路径是红色的。这意味着 Instruments 丢失了您的二进制文件。单击右下角的小文件夹图标以弹出选择文件对话框。按Command+Shift+G输入目录路径,然后粘贴我们之前从 xcode 复制的路径。

在此处输入图像描述

7.您现在应该选择了二进制文件,点击Open打开它。单击对话框上的完成以关闭窗口。Instruments 现在应该在分析代码时显示正确的详细信息和符号名称。

在此处输入图像描述

  1. 如果再次出现这种情况,并且您的二进制文件位于类似 的路径/Users/<User>/Library/Developer/Xcode/DerivedData/...中,则需要将其添加到 Instruments 中的默认搜索路径中。/Library不被 Spotlight 索引,因此不被 Instruments 搜索。转到 Instruments > Preferences > Symbols,然后添加/Users/<User>/Library/Developer/Xcode/DerivedData/.
于 2017-05-14T17:46:30.770 回答
12

自己解决了:

编辑您的方案,其中显示“WhateverProjectNameIs>iPad 6.0 模拟器”

然后点击左侧的“ Profile ” 在 Info 选项卡上,将 Build Configuration 更改为 Debug(可能设置为 Release)应该可以了。请注意,无论出于何种原因,构建目标都没有设置为与配置文件目标相同的构建配置,这让我绊倒了一两次以上。

于 2012-09-27T01:10:17.033 回答
2

分析调试配置不会为您提供正确的配置文件值。调试配置不是为了速度而编译的,你所有的 NSLog 语句都还在。

我创建了一个“配置文件”构建配置来处理这个问题。请参阅对类似 Stackoverflow 问题的回答。

于 2012-11-23T12:33:12.593 回答
2

我也有同样的问题,我尝试了其他人建议的所有步骤。但他们都没有为我解决这个问题。所以,我所做的是,我只是打开按钮Instruments旁边的和Record,单击下拉菜单并选择使用Choose target选项的目标。然后点击Record按钮,现在我可以在仪表板中看到所有方法:)

于 2013-02-18T11:08:57.320 回答
2

我知道这是一个老问题,但上面提到的解决方案都不适合我。我需要切换到最新的 iOS 模拟器(当前使用 iOS 9 而不是 iOS 8)才能正确显示符号名称。我认为 Xcode Instruments 只能与运行最新 iOS SDK 的模拟器一起使用。

于 2016-02-05T13:12:48.113 回答
2

重新启动仪器和 Xcode 解决了我的问题:(

于 2016-04-15T09:16:59.873 回答
1

我遇到了同样的问题,并尝试了其他解决方案无济于事。Scheme问题通常是问题所在,所以我从那里开始。但就我而言,它已经正确配置。这是最终对我有用的方法:

  • 在 Instruments 中,如果进程正在运行,请停止该进程。
  • 转到文件 -> 符号,然后在 dSYM 路径下,找到未被符号化的库。
  • 就我而言,它指向垃圾箱中的项目。所以我清空了垃圾箱,删除了 Derived Data 文件夹中的模块缓存和项目,当我重建项目时,它又开始工作了。在您的情况下,它可能指向其他一些不存在或仪器无法访问的文件。
于 2016-02-01T20:02:08.643 回答
0

将构建路径重置为默认值。我之前已将其更改为 tmp/ 文件夹,并且符号无法显示代码。重置此路径后,分析器可以显示正确的代码。构建路径(相对于派生数据)设置如下: 构建路径

于 2017-03-26T07:19:38.180 回答
0

我在 Xcode 11.4 中遇到同样的问题 1. 在构建成功时在 Xcode 中显示您的 YOUR_PROJECT.app 文件夹,找到 Release-iphoneos 或 Debug-iphoneos 文件夹,根据您的配置文件的构建设置选择哪个。通常我们选择Release-iphoneos。2. 在【Preferences】->【Symbols】中将该路径添加到 Instruments 中,搜索 YOUR_PROJECT.app.dSYM 文件。

在此处输入图像描述

于 2020-04-22T12:11:23.557 回答