调试代码签名和配置文件部分中缺少的行

Posted

技术标签:

【中文标题】调试代码签名和配置文件部分中缺少的行【英文标题】:Debug rows missing from Code Signing and Provisioning Profile sections 【发布时间】:2016-10-06 12:11:35 【问题描述】:

问题:

从项目或目标的顶部菜单中选择全部/组合,这就是我所看到的。 Debug 曾经列在 Provisioning Profile 和 Code Signing Identity 部分中,但现在不见了。我可以像这样在模拟器上运行,但是在尝试部署到连接的测试设备时,我收到有关需要配置文件和代码签名的错误。

这不是 'Provisioning profile' options missing from 'Code signing' Xcode 6.3 的副本,因为我选择了 All/Combined。不仅仅是 Debug 在列表中不可见......它甚至不再存在于 Xcode 用于构建列表的 project.pbxproj 文件中。

是什么原因造成的:

我试图在 Xcode 7.3.1 中删除配置文件并按下删除键,但没有意识到选择了根调试行而不是包含配置文件本身的子行。我可以通过将鼠标悬停在父行上并单击 + 将子项(例如任何 ios SDK 等发布类型)添加到发布或调试行,但我不能以这种方式添加新的根项目,如调试。将鼠标悬停在代码签名或配置文件行上时,没有 + 可用。不幸的是,虽然我不能用鼠标删除这些根行之一(它们上没有 - 按钮),但我可能会不小心用删除键这样做——这就是导致这种损坏状态的原因。

我的尝试:

清理、重新启动 Xcode 和计算机、重新安装 Xcode、升级到 Xcode 8、迁移到 Swift 2.3、迁移到 Swift 3 等。我使用带有 JSON 语法突出显示的文本编辑器打开了 project.pbxproj 文件的多个版本(删除之前的一些)查看差异。 project.pbxproj 文件用于生成项目和目标的菜单项。旧版本缺少许多新版本中发布部分的新设置,因为它已经通过 Xcode 和 Swift 迁移经历了几次升级迭代。除了与该文件有关的其他问题外,我什至不知道我试图添加回来的“调试”部分缺少什么。我可以开始一个新项目并从它的 project.pbxproj 文件中复制调试部分,但我确信手动编辑该文件以尝试添加调试项是一个坏主意。可能有更好的选择。

问题

恢复丢失的调试菜单项的最佳方法是什么?

【问题讨论】:

【参考方案1】:

我的建议是“手动”创建新的调试配置。您不会恢复旧配置,但可以为 Debug 配置设置正确的配置。

Adding a build configuration in Xcode 中描述了该操作,但在您的情况下,您必须复制发布配置并对其进行编辑以满足您的要求。

我还猜想您将不得不编辑您的方案以对每个操作(构建/运行/...)使用正确的配置。

【讨论】:

以上是关于调试代码签名和配置文件部分中缺少的行的主要内容,如果未能解决你的问题,请参考以下文章

使用flavor签名配置覆盖调试构建类型签名配置

配置文件或调试 APK:生成签名的 Bundle 需要您将 Android Gradle 插件更新到版本 3.2.0

签名(调试)不包括 beta-reports-active 权利

即使有有效的链接证书,也缺少代码签名证书

OpenHarmony应用开发--配置OpenHarmony应用签名信息

在调试模式下找不到此可执行文件的有效配置文件