iOS 12 iPad 拒绝启动请求 - Xcode

Posted

技术标签:

【中文标题】iOS 12 iPad 拒绝启动请求 - Xcode【英文标题】:iOS 12 iPad Denied Launch Request - Xcode 【发布时间】:2019-02-24 05:00:47 【问题描述】:

直到昨天,我一直在更新应用程序超过 5 年,没有出现任何问题。

我将 iPad 更新到 ios 12,但每次尝试运行它时,都会收到以下消息:

iPad 拒绝了启动请求

我在其他装有 iOS 11 和模拟器的物理设备上进行了测试,只有装有 iOS 12 的设备才会出现此错误。

我试图解决这个问题?

在 Apple Developer 页面中重新生成我的证书。 将我的方案从“调试配置”编辑为“发布”并选中和取消选中“调试可执行文件”。 重启我的 Mac 并重启 iPad 启用和禁用“等待启动可执行文件”

还有,这个帖子的每个解决方案:Xcode 9 error: "iPhone has denied the launch request"

在尝试了这些替代方案中的每一个之后,问题仅在装有 iOS 12 的设备上仍然存在。

有人知道如何解决这个问题?

更新 我调试了我的应用程序,这是整个日志:

predeterminado  10:33:00.516648 -0600   trustd  cert[0]: MissingIntermediate =(leaf)[force]> 0
predeterminado  10:33:00.516722 -0600   trustd  cert[0]: NonEmptySubject =(path)[]> 0
predeterminado  10:33:00.521320 -0600   SpringBoard [com.mycompany.myapp] Generating image data for snapshot: <XBApplicationSnapshot: 0x1115c11f0; identifier: 5E831360-7FEE-4255-A6FB-08712EF1D226; launchInterfaceIdentifier: __from_UILaunchStoryboardName__; contentType: GeneratedDefault> 
    creationDate = 20 de septiembre de 2018, 10:33:00 a. m. GMT-6;
    keepsImageAccessUntilExpiration = NO;
    hasGenerationContext = NO;
    context = 
        contentType = GeneratedDefault;
        fullScreen = YES;
        referenceSize = 1024, 1366;
        interfaceOrientation = LandscapeLeft;
        additionalContext = 
            statusBarSettings = <XBStatusBarSettings: 0x282f43d00; hidden: NO; style: 0x0; backgroundActivityEnabled: NO>;
        
    
    imageContext = 
        scale = 2.0;
        opaque = YES;
        fileRelativeLocation = none;
    

predeterminado  10:33:00.585893 -0600   SpringBoard com.mycompany.myapp:10:11:3:1:Application replaced
predeterminado  10:33:00.592674 -0600   SpringBoard [com.mycompany.myapp] Application installed using default data provider
predeterminado  10:33:00.638304 -0600   dasd    com.apple.CFNetwork-cc-87-19005-Task <6A4245D9-BABF-4974-899B-B744DCB219AE>.<com.apple.cloudkit.cloudd>.<route=usmia-edge.icloud-content.com:outOfProcess=T:allowExpensive=T:powerNap=F:adaptive=T:app=com.apple.mobileslideshow:2app=com.apple.mobileslideshow.PhotosMessagesApp:disc=T:retry=F:pool=com.apple.cloudkit.BackgroundConnectionPool:uuid:C3F50637-0E71-4FCD-A8B5-DB01E2F3D518>.<1>:9D4C2B:[
    name: ApplicationPolicy, policyWeight: 5.000, response: Decision: Can Proceed, Score: 0.31
    name: DeviceActivityPolicy, policyWeight: 10.000, response: Decision: Can Proceed, Score: 0.60
 ] sumScores:58.471249, denominator:65.910000, FinalDecision: Can Proceed FinalScore: 0.887138
predeterminado  10:33:00.662238 -0600   SpringBoard [com.mycompany.myapp] Snapshot data for <XBApplicationSnapshot: 0x1115c11f0; …08712EF1D226> written to file: /private/var/mobile/Containers/Data/Application/1DB50DD3-CF52-4498-854F-C0939D28ECC0/Library/Caches/Snapshots/com.mycompany.myapp/5E831360-7FEE-4255-A6FB-08712EF1D226@2x.ktx
predeterminado  10:33:00.666489 -0600   trustd  cert[0]: MissingIntermediate =(leaf)[force]> 0
predeterminado  10:33:00.687764 -0600   TVRemoteConnectionService   XPC: Recieved an application registered LaunchEvent
predeterminado  10:33:00.909692 -0600   trustd  cert[0]: MissingIntermediate =(leaf)[force]> 0
predeterminado  10:33:00.910738 -0600   trustd  cert[0]: SubjectCommonName =(leaf)[]> 0
predeterminado  10:33:00.910872 -0600   trustd  cert[0]: LeafMarkerOid =(leaf)[]> 0
predeterminado  10:33:00.912183 -0600   trustd  cert[0]: MissingIntermediate =(leaf)[force]> 0
predeterminado  10:33:00.912253 -0600   trustd  cert[0]: AnchorApple =(path)[]> 0
predeterminado  10:33:00.912321 -0600   trustd  cert[0]: ChainLength =(path)[]> 0
predeterminado  10:33:00.912399 -0600   trustd  cert[0]: IssuerCommonName =(path)[]> 0
predeterminado  10:33:00.943350 -0600   trustd  cert[0]: MissingIntermediate =(leaf)[force]> 0
predeterminado  10:33:00.943416 -0600   trustd  cert[0]: NonEmptySubject =(path)[]> 0
predeterminado  10:33:00.972795 -0600   trustd  cert[1]: AnchorTrusted =(leaf)[force]> 0

【问题讨论】:

使用 Xcode 在 iOS 设备上运行应用程序是否存在问题?你在使用 Xcode 10 吗? @Jerant Elias Serrano 祝你好运,我遇到了同样的问题,我的所有设备都处于正常状态。 2 部 iPhone 和 2 部 iPad。都是iOS12。 当我有太多的打印语句并且我不得不不优雅地中止时,我遇到了这个问题。在这种情况下,通过冷启动我的手机(并在重试之前删除有问题的打印)来解决问题。 【参考方案1】:

Haozes:我通过这样做修复了它:

    打开编辑方案 打开信息标签 可执行文件然后选择启动时询问

感谢上帝!

参考:https://forums.developer.apple.com/thread/86729#270356

【讨论】:

这是唯一对我有用的解决方案...谢谢! 哇,这对我有用,对我来说,简单的 iOS 开发是多么的有缺陷。 不是真正的解决方案,如果你这样解决这个问题,你将无法使用设备调试你的应用程序。 这是一个非常糟糕的解决方案,因为这将禁用应用程序的调试,并且断点和崩溃报告等功能将停止工作【参考方案2】:

我花了三天时间解决问题。我找到了两个解决方案。您可以选择两种方式中的任何一种。

解决方案 1:

打开 System PreferencesUsers & Groups添加用户帐户(使用新用户构建成功)。

解决方案 2:打开 Keychain Access -> 选择 System,All Items -> 删除证书 Apple Worldwide Developer Relations Certification Authority。

【讨论】:

解决方案 2 对我有用,但只有在我也删除了“登录”钥匙串并且在我的项目中执行以下操作之后:产品 -> 方案 -> 编辑方案 -> 信息 -> 可执行文件 ->启动时询问 谢谢@plocks!我也必须按照你的描述去做。 另一个可恶的 Xcode 签名错误……是的,确认 (2)!太感谢了!那将是多么令人沮丧的一天。我想补充一点:在 Product -> Scheme -> Edit Scheme -> Info ➞ Executable 可能会选择应用程序,但必须取消选择“Debug executable”,然后仍然可以工作。 在遵循@plocks 建议之后,解决方案 2 起作用了。我只想说 Apple 和 Xcode 真的让我无法编写 iOS 应用程序。 禁用“调试可执行文件”会起作用,但没用,不是真正的解决方案,您无法使用您的设备进行调试!?【参考方案3】:

在我的情况下,开发者帐户尚未在 iOS 设备上获得批准。我必须在“设置”应用中手动执行此操作:

打开设置应用 转到常规 转到配置文件和设备管理 选择有问题的个人资料并信任它

【讨论】:

❤️ 救生员! ❤️ 真的❤️ 救生员! ❤️ 这适用于将应用从一个开发帐户切换到另一个帐户的情况,谢谢!【参考方案4】:

我想稍微解释一下答案,根据我在解决这个问题时所经历和学到的知识提供更多细节,以及为那些像我一样是 Xcode 和 iOS 开发新手的人。就我而言,我只需要让它尽可能快地运行。

我的情况是,我在一些 iPad 上运行了一个 Ionic 3 iOS 应用程序,该应用程序是当地非营利组织的前台登记亭,因此该应用程序不需要在商店中公开。几天后,该应用程序崩溃了,然后经过数周的研究,我发现这是我的 Apple 开发者帐户,而不是错误或内存泄漏。

所以我重新设置了我的 Apple 开发者帐户,创建了新的和更新的签名证书和临时配置文件,并在这些 iPad 上安装了这些 iPad,这样它们就不会再崩溃了。我开始使用我闪亮的新证书和配置文件在设备上运行该应用程序......然后追逐这个“iPad 拒绝启动请求”混乱了几个小时。

这是我学到的:

先尝试编辑你的运行方案。

如果目标设备上已经存在该应用,则只需将可执行文件设置为“启动时询问”,前往产品方案 → 编辑方案...

确保选择左侧的 Run,然后在 Info 选项卡下打开右侧的 Executable 选项。选择“启动时询问”,然后关闭

当您再次尝试运行应用程序时,将出现一个包含目标设备上可用应用程序的弹出窗口,您需要选择“appName.app”,然后单击运行 .

没有看到您的“appName.app”?,那么这是全新安装,请点击取消

如果这是全新安装,您必须确保将可执行文件设置为您的“appName.app”。它会拒绝你的第一次运行尝试,但它会在设备上安装应用程序。然后返回并将可执行文件重置为“启动时询问”,然后再次运行。 “appName.app”现在应该在列表中。

如果编辑您的 运行方案 无法启动并运行...

我建议您接下来查看您的 Apple 开发人员证书,并确保它们符合要求并且是最新的。

点击您的签名资料旁边的信息圈 (i) 图标,快速了解一下。

在此处管理您的证书... https://developer.apple.com/account/ios/certificate

您也可以让 Xcode 下载您的证书,或者通过转到 Xcode → Preferences 来查看列出的证书:

然后确保您位于 Accounts 选项卡上,在左侧选择您的 Apple ID,然后在右下角查看是否能够下载或管理/查看您的证书...

如果您对证书有任何更改/更新,请尝试再次运行您的应用程序,然后再次尝试编辑您的运行方案,然后再创建新的用户帐户。

如果一切都失败了......

然后,您可以尝试在您的计算机上创建一个新的用户帐户,并完成为该新帐户设置所有相同证书的过程。但这比我想在这里详细说明的要多。我也建议将此作为最后的手段。

Xcode 10: iPhone has denied the launch request

祝你好运

【讨论】:

这个帮助了我而其他人没有,可惜开发 iOS 应用程序是基于“好运”:) 所以,每次我必须选择一个应用程序名称来调试?!在过去的 5 年里,我不必这样做。但是这个问题是从前天开始的,好诡异。我认为这不是真正的解决方案,如果您解决了这样的问题,您将无法使用您的真实设备进行调试。 救命稻草!!谢谢老哥!!【参考方案5】:

对于 Xcode 10.v

1 -> 删除keychain中的所有开发者证书。

2 -> 从 Xcode 中删除 AppleID。

3 -> 重启 Xcode。

4 -> 再次向 xcode 添加 AppleID(与之前相同即可)。

5 -> 再次重启 Xcode,(最好重启你的 MAC)。

【讨论】:

【参考方案6】:

这个问题可以通过在Edit Scheme中取消选中Debug executable来解决。

【讨论】:

不是真正的解决方案,如果你这样解决这个问题,你将无法使用设备调试你的应用程序。 这是一个非常糟糕的解决方案,因为这将禁用应用程序的调试,并且断点和崩溃报告等功能将停止工作 我知道这不是真正的解决方案。我认为这个问题与证书或配置文件有关。不确定。 我正在客户端的 iOS 应用上测试功能,目前不需要调试;这个解决方案让我陷入困境,所以谢谢。【参考方案7】:

在我的情况下,项目无法在具有指定证书的 iOS12+ 上启动,但可以在其他 iOS 版本上启动。

我在其他 cmets 中尝试过上述解决方案,但失败了。最后,我发现问题出在钥匙串中证书的信任设置。

我的解决方案:

    删除钥匙串中的旧证书->系统->所有项目->你的项目相关证书 重新安装证书 重启 Xcode

希望这可以节省您的时间。

【讨论】:

删除钥匙串中的所有开发者证书 -> 从 Xcode 中删除 AppleID -> 重新启动 Xcode。这些是我为解决我的问题所遵循的确切步骤。谢谢。 我不得不在“会话”中删除相同的证书(可能是英文版 KeyChain 上的“登录”)感谢您的帮助:)【参考方案8】:

编辑 ProductSchemeEdit SchemeInfo → *Executable** 更改为 启动时询问有效。但是,将方案重置为其原始设置时,应用程序没有启动。

寻找更永久的解决方案,我如上所述删除了开发者证书(解决方案2:打开钥匙串访问→选择系统,所有项目→删除证书Apple Worldwide开发者关系证书颁发机构**),但是当我重新启动 Xcode 时,我的应用程序不会在设备上以完全相同的行为启动。

以下方法似乎已解决该问题:

    从 Xcode 首选项中删除 Apple ID; 重新启动 Xcode 以添加 Apple ID; 使用管理证书按钮在 Xcode PreferencesAccountsApple IDs 中添加新的 iOS 开发证书; 退出 Xcode; 重新启动 Xcode 和应用程序。

【讨论】:

【参考方案9】:

这是一个不涉及编辑方案的解决方案,因此可以像往常一样使用断点

查看钥匙串访问,搜索关键字“开发者”,我发现我的 iPhone 证书被标记为红色“无效”。所以这就是我所做的:

    我打开钥匙串访问并搜索关键字“开发者”。 我删除了“iPhone Developer”证书(如果您在使用另一台设备时遇到问题,请务必删除正确的)。 然后我也删除了“Apple Worldwide Developer Relations Certification Authority”和“Developer ID Certification Authority”。

之后一切正常,我可以在我的 iPhone 上启动该应用程序。

There’s also a video on YouTube showing this method.

【讨论】:

顺便说一句,步骤 1 和 2 足以解决我的问题。感谢您的回答;) 这个 YouTube 视频(今天也发布)也推荐了类似的方法:youtube.com/watch?v=j1ztHZ8v474。 @PauloMattos 谢谢我把它添加到我的答案中 谢谢。这对我有用。感谢您的视频【参考方案10】:

我通过在 Xcode 11.0 下的 .workspace 项目的 Signing Capabilities 下检查 Automatically manage Signing 解决了这个问题。

这是一个 Cordova 项目。

只是说以防万一。

【讨论】:

我找到了同样的方法,它也对我有用。我在发布我的答案后找到了你的答案。敬礼。。【参考方案11】:

另一种可能的解决方案:只需关闭设备电源,然后重新启动即可。再次构建到设备。

【讨论】:

这显然被否决了,因为在原始问题中提到了提议的解决方案。但是,我注意到当我提出解决方案时它不是问题的一部分,当我遇到同样的问题时它对我有用。这是一个很好的解决方案。【参考方案12】:

我今天遇到了这个问题,上述解决方案都没有真正奏效。在关注了 iOS 12 和 XCode 似乎都想要的东西之后,看起来当从 XCode 在设备上运行和调试时,iOS 需要开发人员配置文件而不是发布分发配置文件。尝试从 XCode 在设备上运行,同时使用非开发人员配置文件进行调试会导致一种或另一种形式的问题。

在这方面,如果您使用手动配置文件,无论出于何种原因,您都需要两个。一个开发配置文件和一个分发配置文件,并在设备上调试时使用开发配置文件。

【讨论】:

【参考方案13】:

我通过删除钥匙串中的证书并再次重新启动 Xcode 来解决此问题。 以下是步骤:

1)在钥匙串中:系统->所有项目->删除-Apple全球开发者关系证书颁发机构。

2) 再次重启 Xcode。

这对我有用。

【讨论】:

【参考方案14】:

经过几天的研究并感谢@Little Green Viper 的帮助,我找到了解决方案。

基本上,一些 Apple 全球开发者关系认证机构 在更新后无法正常工作,但它能够为 iOS 11 编译成功。 然后,最危险的解决方案是删除所有 Apple Worldwide Developer Certificates,但在此之前,请尝试在您的 Mac 上创建一个新用户。

系统偏好设置用户和组新用户)应该可以工作。

现在您必须选择在新用户中工作或重新签署证书。就我个人而言,我选择了第一个选项。

【讨论】:

很高兴您解决了这个问题,但我想指出的是,您所说的与 Linh Vo 之前的回答完全相同。【参考方案15】:

有一个简单的解决方案。

更改您的 Bundle Identifier 或 DisplayName 或同时更改它们。当它工作时,把它改回原来的样子。

它对我有用。

【讨论】:

【参考方案16】:

对我有用的是:

选中“自动管理签名”

这样我可以让它工作

这告诉我,错误可能出在配置文件中。

【讨论】:

【参考方案17】:

我的是一个类似的事件 - iOS 13 (iPadOS) / Xcode 11

配置文件不包含我尝试运行该项目的当前设备。

    您可以使用设备 UDID 生成新的配置文件 切换到自动签名

【讨论】:

【参考方案18】:

我尝试了上述所有解决方案,但没有一个对我有用。

我的问题是钥匙串中的开发证书不受信任。 my problem

我终于找到了自己的解决方案。

    关闭 Xcode。 删除钥匙串中的所有开发者证书。 关键步骤:前往https://www.apple.com/certificateauthority/,下载并安装两个版本的全球开发者关系证书(一个在2023年到期,另一个在2030年到期) page 重新启动 XCode,它可以工作了。

【讨论】:

【参考方案19】:

我只是简单地关闭我的设备并重新启动,繁荣......

【讨论】:

看起来询问的人已经尝试过:“重新启动我的 Mac 并重新启动 iPad” 嗨,欢迎来到 Stack Overflow!真的很难说这是否真的是一个答案。 'boom.....' 是否意味着它有效或无效?或者这是否意味着屋顶塌陷了?这种口径的答案可能会被否决和/或删除。【参考方案20】:

我被这个问题困扰了几天。 我尝试了我在这里阅读的所有内容,但没有成功。 我记得我用我的 AppleID 登录了另外两台 Mac 来下载一些应用程序。 我退出了那些 Mac,使用另一个 AppleID 登录并在它们上下载了一些东西(我这样做是因为我在这些 Mac 上购买并下载了一个 Mac 应用程序)。

它解决了我的问题。 希望对您有所帮助。

【讨论】:

【参考方案21】:

问题应该与您的证书有关。 尝试重新签署您的证书并将其安装在您的 Mac 上。

另外,为了更好地了解您的问题,请将您的 iPad 与 iOS 12 连接,然后尝试重新运行该应用程序。如果问题仍然存在,您可以查看日志以查看更多详细信息。

在您的 Xcode 上,转到 WindowDevices选择您的设备查看设备日志

【讨论】:

我也有同样的问题。它持续存在。以上方法我都试过了。【参考方案22】:

我也遇到过同样的问题。

确保测试设备udid已添加到开发者帐户中,如果您再次遇到同样的问题,请尝试重新启动测试设备。

我是这样解决的。

【讨论】:

【参考方案23】:

我昨天在 iOS 12 和 Xcode 10 上也遇到了同样的问题。我通过将“始终嵌入 Swift 标准库”设置为 Yes 解决了这个问题。

在 Xcode 中,选择 TargetBuild SettingsAlways Embed Swift Standard Libraries,并将值设置为 Yes em>。

【讨论】:

我刚试过,但同样的情况。应用程序立即关闭 抱歉,这不是您的解决方案。在查看您的日志时,您是否研究过缺少中间证书的问题?也许这里的 Apple 文档 (developer.apple.com/library/archive/technotes/tn2232/…) 会有所帮助。 这是你们中的一员吗? forums.developer.apple.com/thread/109156 看起来这实际上可能是 iOS 12 的错误/功能(“美”?)。 顺便说一句:“缺少中间证书”问题不适用于此处。程序在到达 didFinishLaunchingWithOptions 之前就发出嘶哑的声音。我已经尝试了所有我能想到的。

以上是关于iOS 12 iPad 拒绝启动请求 - Xcode的主要内容,如果未能解决你的问题,请参考以下文章

iPad应用程序被拒绝,“未能及时启动”崩溃

由于我无法重现的启动崩溃,通用 iPad 应用程序被拒绝

iPhone 应用程序被拒绝 - 由于 iPad 崩溃,目标设备系列设置为仅 iPhone

iPhone 应用程序被拒绝:首次启动 iPad 上的屏幕变白

应用商店拒绝适用于 iPad 上 iOS 10.1.1 的 iPhone 应用

据称由于 IPv6 连接性,iOS 应用程序被拒绝