【问题标题】:XCode fails to run app on device, saying the program being debugged is not being runXCode 无法在设备上运行应用程序,说正在调试的程序没有运行
【发布时间】:2009-11-13 04:42:16
【问题描述】:

我正在运行 Xcode,试图让我的应用在我的 iphone 上运行。我收到错误消息“正在调试的程序没有运行。”

【问题讨论】:

    标签: iphone xcode


    【解决方案1】:

    解决方案是在我的手机连接到计算机时,使用 Xcode 的管理器窗口从手机中删除我的开发者配置文件,然后重新添加我从 developer.apple.com 重新下载的开发者配置文件。

    【讨论】:

    • 为我工作 - 谢谢。我认为这是由于我的一个个人资料过期(即使我当时没有使用那个特定的个人资料)造成的。
    • 如果您使用的是Xcode 3.2.3,则无需重新下载,只需如上所述删除过期的配置文件即可。
    【解决方案2】:

    仅当我从设备中删除另一个不相关的过期配置文件时,它才对我有用。很奇怪。

    【讨论】:

    • 我也一样!我不得不从设备中删除所有过期的配置文件。奇怪!
    【解决方案3】:

    我需要做的就是重新启动我的设备。

    【讨论】:

    • 我尝试删除开发配置文件并通过“管理器”窗口重新下载并将其添加到我的 iPod Touch,但没有成功。关闭 Xcode 并重新启动 iPod 为我修复了它。
    • 重启我的两台设备(笔记本电脑和 iPhone)后这种方法的工作原理
    【解决方案4】:

    我也曾多次遇到过这个问题,我想我终于(几个月后)完全理解了 Apple 的逻辑。

    在开发时,必须使用新的配置文件是很常见的;通常是因为您添加了新的测试人员,或者旧的测试人员过期。因此,您尽职尽责地将新用户的 UDID 添加到您的配置文件中,下载它,然后将其拖到 xcode 中。

    然后,您单击项目(或目标)的设置并告诉它使用新的分发配置文件。您可能像我一样使用了“配置”下拉菜单下的“所有配置”。哎呀。

    这样做的目的是将您的 DISTRIBUTION 配置文件与所有编译配置相关联。但是,分发配置文件不适用于调试!您必须确保不会在调试配置下覆盖您的 DEVELOPER 配置文件。如果您这样做,只需返回您的项目,在配置下选择“调试”,然后选择适当的 DEVELOPER 配置文件进行编译。

    希望对您有所帮助,伙计们。 -VTPete

    【讨论】:

      【解决方案5】:

      为了解决这个问题,我删除了我使用 xcode 部署到应用程序的最后一个应用程序,然后再次构建了我当前的应用程序,它运行良好。

      【讨论】:

        【解决方案6】:

        其他建议对我也不起作用。

        在我将 Entitlements.plist 中的“application-identifier”更改为 Provisioning Profile 中的 App Id 后,它开始工作。默认值为 $(AppIdentifierPrefix)$(CFBundleIdentifier),我将其更改为“H2GC99UNHN.au.com.mydomain.myappname”。

        如果这些变量正确解析,Xcode 默认值:$(AppIdentifierPrefix)$(CFBundleIdentifier) 将起作用。 CFBundleIdentifier 指的是 Info.plist 中的“Bundle identifier”。 我从来没有发现在哪里设置 AppIdentifierPrefix 应该是 H2GC99UNHN 之类的东西。

        要在 Xcode 中找到您的 App ID,请转到 Window 菜单,然后是 Organizer。点击正确的 Ad Hoc 配置文件,App Identifier 是属性之一。

        PS:为了让应用程序在我的设备上进行测试,我在 Xcode 中使用“构建并运行”(我不知道更好)。但是运行部分会失败,因为我在我的 Beta 配置中删除了调试符号。让运行部分失败,然后手动重新打开应用程序。

        如果签名的应用程序通过应用程序 ID 链接到配置文件并且它是证书,则此错误是有意义的。

        【讨论】:

          【解决方案7】:

          对于那些在尝试上述所有方法后仍然出现此错误的人,以下解决方案只是在我收到错误后为我修复了它。

          我进行越狱开发,因此为了绕过强制代码签名,我修改了 /Developer/Platforms/iPhoneOS.platform 下的 XCode 的 Info.plist。

          要修复错误,只需还原这些修改:在 Info.plist 文件中用 XCiPhoneOSCodeSignContext 替换所有 XCCodeSignContext 实例。

          【讨论】:

          • 可能不相关,因为 OP 没有越狱。
          • 我没有越狱,但删除这些文件修复了它。
          【解决方案8】:

          您应该检查您使用的证书,记得使用开发者配置在您的设备上进行调试,并确保所有配置都已完成。

          【讨论】:

            【解决方案9】:

            我有两个开发者身份(工作和家庭)并使用相同的设备进行开发。我还在家里使用通配符应用标识符 (xxxxxxxxxx.*),而且我经常使用相同的配置文件构建不同的应用程序。有时当我切换位置时(例如从工作到家),我会收到上述错误。

            从设备中删除并重新添加开发人员配置文件,从 Apple 重新加载配置文件并重新启动设备(以各种组合方式)并没有解决我的问题。

            在设备上再次启用运行和调试的是:

            • 在Xcode中进入项目设置(双击项目名称)
            • 搜索“身份”以找到设置“代码签名身份”/“任何 iOS”
            • 在我的家庭资料部分下勾选“iPhone 开发者:我的名字 (mydevid)”(对于应用程序标识符 '*')
            • 勾选“自动配置文件选择器”下的“iPhone 开发者:”,即使它“当前匹配”相同的开发者 ID 和配置文件

            (我也退出了 Xcode 并做了rm -rf build,但这可能不需要)。

            【讨论】:

              【解决方案10】:

              在我的设备上安装了一个 AdHoc 分布式应用程序后,这发生在我身上。我不得不恢复设备以使调试器再次工作。

              【讨论】:

                【解决方案11】:

                我遇到了同样的问题,但上述方法都不起作用(甚至擦除/恢复设备)。

                然后我查看并发现我错误地将我的目标设置为所有以使用临时分发配置文件。不支持调试。

                另见iPhone Debugging: How to resolve 'failed to get the task for process'?

                【讨论】:

                  【解决方案12】:

                  我只需要关闭我的 iPhone 设备并重新启动它。

                  我按这个顺序试过了:

                  1. 在 Xcode 中删除应用程序。
                  2. 在 Finder 中删除构建文件夹。
                  3. 重启设备。

                  只有 3. 为我工作。

                  imp:我的 Provisoning 配置文件有效期将近一年,它们没有理由过期(我什至对它们进行了双重检查以确认 :))。 如果这不起作用,我会检查 - 正如有人正确建议的那样,如果正在使用开发者配置文件 - 就我而言。

                  【讨论】:

                    【解决方案13】:

                    啊,最新版本:我的项目中包含 Core-Plot 框架。我的旧开发配置文件已过期,我下载了新配置文件,并使用最新配置文件更改了项目,但我还是遇到了这个错误。

                    所以,我需要打开 Core-Plot 框架项目本身,将那里的代码签名更改为最新的配置文件,构建它,回到我原来的项目,重新构建它,然后一切又开始正常工作了。

                    【讨论】:

                      【解决方案14】:

                      我最终删除了我的 Target 来解决这个令人头疼的问题。要添加新的,请右键单击 Target > New Target > Application。

                      【讨论】:

                        猜你喜欢
                        • 2011-10-18
                        • 2011-09-28
                        • 1970-01-01
                        • 2017-05-15
                        • 1970-01-01
                        • 1970-01-01
                        • 1970-01-01
                        • 1970-01-01
                        • 2020-09-01
                        相关资源
                        最近更新 更多