45

当我尝试在 iPhone 上构建和运行我的应用程序时,我在控制台上收到“UUID 不匹配”警告。

警告:已加载库检测到 UUID 不匹配 - 磁盘上为:/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.1.sdk/usr/lib/liblockdown.dylib =uuid-mismatch-with-loaded-file ,file="/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.1.sdk/usr/lib/liblockdown.dylib

任何人都有这个问题并设法解决警告?

4

14 回答 14

55

卸载并重新安装设备上的 iOS 和 SDK 并没有为我解决这个问题。我能够解决此问题的唯一方法是删除 4.2.1 iOS 版本的 DeviceSupport 文件,该文件可在以下位置找到:

/Developer/Platforms/iPhoneOS.platform/DeviceSupport/

删除文件并重新启动 Xcode 后,我插入设备并被提示从设备本身恢复符号文件 - 大约需要 5 分钟,在此之后,一切恢复正常。

于 2010-11-26T23:57:58.993 回答
8

正如 Eric 提到的,这是因为手机上的库与 XCode 中的库不同。

当我尝试从 Xcode 调试应用程序时遇到了这个问题: iPhone: iOS 4.2 beta 2 XCode: iOS SDK 4.1

但是,如果我尝试使用带有 iOS SDK 4.2 beta 2 的 XCode 进行调试,那么它可以正常工作。

由此,我得出结论,XCode 中的 SDK 必须与手机上的 iOS 版本匹配才能进行调试。

确保两者匹配,您应该能够调试您的应用程序。

于 2010-10-07T04:58:14.490 回答
6

我尝试了以下

清洁所有 - 没用

删除手机上的应用程序/删除构建/重新启动 XCODE - 没用

这确实有效

拔掉电话

删除符号文件文件夹

/Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148)

重启xcode

插入电话

管理器弹出有关检测到未知 IOS 的消息

可以收集

大约需要一分钟。

文件夹被重新创建

/Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148)

应用程序部署到设备后很好。

我从垃圾箱中取出 /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148) 的文件夹,并在 Deltawalker 中将其与新版本的

/Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148)

并且只有时间戳差异。每个文件的数量和大小是相同的。

Theres 380 files in 

/Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148)

对我来说可能的原因

我已经下载了 Xcode 和 iOS 4.2 的 GM 种子并在另一部手机上进行了测试。

我的 iPhone 4 我像普通客户一样从 iTunes 升级。

然后尝试将我的应用程序从这个 GM 种子版本的 Xcode 部署到公开发布的 iOS 4.2.1 版本。

于 2010-12-07T19:15:02.693 回答
4

如果您安装了 Spire 并更新到 5.0.1,您需要卸载 Spire 或更新 Spire 正在使用的 dyld_shared_cache...

Spire dyld 缓存位于 /var/spire。您需要从 ipsw 中提取适合您当前固件的缓存。:)

于 2012-01-19T17:44:25.273 回答
3

完全卸载开发工具:

$ sudo /Developer/Library/uninstall-devtools --mode=all

(如果您将其安装在默认位置以外的某个位置,则显然要更改路径)。安装开发工具后,您应该重新启动机器。现在重新安装开发工具。这为我解决了这个问题。

在重新安装开发工具之前,我尝试恢复我的设备,但没有解决任何问题。如果重新安装开发工具不能解决这个问题,我可能会尝试恢复您的设备。希望对某人有所帮助。

于 2010-03-03T20:24:04.393 回答
3

当前的最终 SDK 仅为 4.2,而设备上的 iOS 为 4.2.1。当您第一次在 XCode 中插入您的设备时,Organizer 窗口将收集您设备的调试符号。如果需要再次执行此操作,可以显式删除 /Developer/Platforms/iPhoneOS.platform/DeviceSupport/。有趣的是,有时您仍然会遇到那些烦人的“无法找到符号”错误。但至少你现在可以在设备上调试了。

于 2010-11-30T18:48:54.577 回答
3

嘿谢谢!我让它工作了。* 使用 Organizer 我刷新了固件

  • 在管理器中,启用手机(右键单击 -> 添加设备....)

  • 关闭 XCode

  • 删除 $project/build/*

  • 删除 /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1

  • 重启 XCode

  • 去组织者并同意让它下载它想要的东西

  • 在管理器中,再次右键单击 -> 添加设备...。

  • 更新的代码签名

  • 命令 + Y

在此之后它调试得很好。

感谢所有输入的人:)

于 2011-01-07T23:16:44.193 回答
2

这是良性的;别担心。该消息告诉您设备上的库与 SDK 中的库并不完全相同,但在这种情况下,库之间的差异不会产生任何明显的影响。

于 2008-10-18T21:25:04.217 回答
1

如果从 mac 上拔下设备,请在设备上运行应用程序。该应用程序可以正常工作,但您将无法使用控制台来调试设备上的任何问题。在开发者论坛上搜索答案后,这是开发者中非常普遍的问题。但是,除了一些可能的提示之外,没有已知的解决方案。

这是另一个论坛的答案,它有效!我认为它来自 webbuilders.com?

去搞清楚???

访问此 URL 以获得良好的描述; http://webbuilders.wordpress.com/2009/03/19/iphone-uuid-mismatch-detected-with-the-loaded-library/

于 2009-10-05T21:54:43.830 回答
1

我相信当 Xcode/iPhone SDK 没有与设备安装的框架保持最新时会发生这种情况。确保设备软件是最新的并安装最新版本的 Xcode/iPhone SDK - 为我工作。

于 2009-11-15T16:13:15.163 回答
1

我也有这个问题。

我所做的只是退出 XCode,Interface Builder。启动XCode,重新打开项目。清洁所有目标。重建。在这种情况下,在我的 iPad 上调试有效。

于 2010-07-13T13:04:15.403 回答
1

我知道这是一篇旧帖子,但也许我的解决方案会帮助其他人,因为我最近遇到了这个问题。

我最近通过下载 SDK 和 Xcode 更新升级到了 iOS SDK 4.1 Beta 3。安装后,我得到了与原始海报相同的错误。原来要解决这个问题,我只需要在我的iPhone上下载并安装相应的 iOS 版本。

在我的 iPhone 上安装 iOS Beta 3、恢复手机、重新编译并运行后,一切都恢复了原样。

于 2010-08-30T00:40:07.810 回答
1

为了任何像我一样通过 Google 找到此问题的人的利益,我在以下情况下开始收到此消息:

  1. 我一直在使用与我的个人开发者计划帐户绑定的配置文件开发应用程序;
  2. 我将应用程序切换为使用与不同开发人员计划帐户绑定的配置文件(我正在为其开发的客户最终设置了他们的帐户)。

对我有用的修复是退出 Xcode,删除项目的构建目录,然后重新启动 Xcode 并重建。我怀疑 Xcode 中的“Clean All”可能也有效,但直到后来我才想到这一点。

根据下面的评论,“全部清除”毕竟行不通

于 2010-11-18T12:27:38.867 回答
0

我认为这不一定像建议的那样是良性的,所选答案也没有解决如何停止警告。以下应该停止警告:

  1. 从 Mac 上拔下 iPhone 或 iPad
  2. 退出 Xcode
  3. 删除构建目录
  4. 启动 Xcode,插入 iPhone 并重试

YMMV,但这对我有用。

于 2010-08-24T15:55:15.060 回答