【问题标题】:UUID mismatch detected with the loaded library检测到与加载的库不匹配的 UUID
【发布时间】:2010-09-17 22:23:13
【问题描述】:

当我尝试在 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

有人遇到这个问题并设法解决了警告吗?

【问题讨论】:

    标签: iphone objective-c cocoa-touch


    【解决方案1】:

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

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

    【讨论】:

    【解决方案2】:

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

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

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

    根据下面的 cmets,“全部清除”不会毕竟工作。

    【讨论】:

    • “全部清除”对我也不起作用。但是关闭 Xcode,删除“build”目录并重新启动确实修复了错误。 (我在更改 Bundle Identifier 后开始看到此错误。)
    【解决方案3】:

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

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

    • 关闭 XCode

    • 删除 $project/build/*

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

    • 重启 XCode

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

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

    • 更新的代码签名

    • command + Y

    在这之后它调试得很好。

    感谢所有输入的人:)

    【讨论】:

      【解决方案4】:

      我尝试了以下

      全部清理 - 没用

      在手机上删除应用程序/删除构建/重新启动 XCODE - 不起作用

      这确实有效

      拔掉手机

      删除符号文件夹

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

      重启xcode

      插入手机

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

      HI它可以收集

      大约需要一分钟。

      文件夹被重新创建

      /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 版本。

      【讨论】:

      • 只是另一个注释。我删除了符号文件并插入了电话,组织者将它们复制了过来,它就可以工作了。几天后,同样的不匹配错误出现了。我唯一记得做的不同的事情是重新启动手机。我的通常会持续数天而无需重新启动
      【解决方案5】:

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

      【讨论】:

        【解决方案6】:

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

        /Developer/Platforms/iPhoneOS.platform/DeviceSupport/
        

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

        【讨论】:

        • 我也不得不使用这种方法。困扰我的是我不知道是什么导致了这种情况的发生。
        • 我有点怀疑它与 4.2.1 的两个不同版本有关。 3GS 运行 8C148a,而所有其他设备运行 8C148。我使用 3GS 进行开发后才出现此问题。不知道是不是巧合。
        • 谢谢!它有助于!保留一个SDK文件夹(例如3.0)并重启Xcode
        • 这发生在 IOS 更新到 4.3 之后,我在 DeviceSupport 文件夹中有两个 4.2 版本。删除文件夹并从 iPad 收集符号文件后,一切都恢复正常了...
        • 安德鲁的解决方案有效!我相信这发生在我安装 Xcode 4 之后,除了我的 Xcode 3 安装。在第一次 Xcode 4 启动时,它要求收集未知 iOS 的符号(4.2.1 设备与 Xcode 4 的 4.3)。之后我的 Xcode 3 提出了上述警告。
        【解决方案7】:

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

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

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

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

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

        【讨论】:

          【解决方案8】:

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

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

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

          【讨论】:

            【解决方案9】:

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

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

            YMMV,但这对我有用。

            【讨论】:

              【解决方案10】:

              我也有这个问题。

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

              【讨论】:

                【解决方案11】:

                完全卸载开发工具:

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

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

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

                【讨论】:

                • 以为就是这个。这个对我不起作用。非常令人惊讶。我以为肯定会的。这个问题快把我逼疯了。
                【解决方案12】:

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

                【讨论】:

                  【解决方案13】:

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

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

                  去看看???

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

                  【讨论】:

                    【解决方案14】:

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

                    【讨论】:

                    • 可能是这样,但在我的情况下,我无法再访问我在设备上运行的应用程序的控制台或调试器。
                    • 如果是良性的,那我就不能使用调试器了。这是一件大事。
                    • -1 这是一个糟糕的答案。如果它是良性的,就不会发出警告。
                    猜你喜欢
                    • 1970-01-01
                    • 2020-11-16
                    • 1970-01-01
                    • 2016-12-30
                    • 2016-04-28
                    • 2016-06-24
                    • 1970-01-01
                    • 2019-04-17
                    • 2015-05-07
                    相关资源
                    最近更新 更多