找不到此可执行文件的有效配置文件...(再次)
Posted
技术标签:
【中文标题】找不到此可执行文件的有效配置文件...(再次)【英文标题】:A valid provisioning profile for this executable was not found... (again) 【发布时间】:2013-01-21 13:37:28 【问题描述】:我知道这个问题已被多次询问和回答,但由于所提出的解决方案似乎都不起作用,我感到很头疼。
我收到了上述错误,尽管有一个有效的配置文件,据我所知,它与捆绑标识符匹配:
按照here 和here 的建议,我已按照该站点上各种建议解决方案中的步骤进行操作,包括删除所有现有证书并重新开始。
我注意到的一件事是配置文件没有出现在代码签名列表中,无论是目标还是项目。
谁能提供进一步的建议?
【问题讨论】:
【参考方案1】:我仍然不确定问题是什么,但删除所有证书并重新开始(尽管两次)最终解决了它。
我最好的猜测是我错过了该程序的一些小而重要的细节。不幸的是,我不能再具体了。
【讨论】:
【参考方案2】:这件事昨天发生在我身上。发生的事情是,当我添加设备时,Xcode 默认将其包含在错误的配置文件中。由于 Apple 已更新配置门户,因此更容易解决此问题:
-
登录 developer.apple.com/ios 并点击 Certificates, Identifiers & Profiles
点击设备并确保列出相关设备
单击配置文件 > 全部并选择您要使用的配置文件
点击编辑按钮
您会看到另一个设备列表,其中也有一个标签,可能会显示“已选择 4 个设备中的 3 个”或类似的内容。
选中全选框或滚动列表并检查设备。如果您的设备未选中,这就是您的问题。
点击“生成”
不要点击下载并安装 - 虽然这会起作用,但如果您已经安装了配置文件,它可能会搞砸您的项目文件(有关详细信息,请参阅 this question)。
打开Xcode,打开Organizer,切换到Devices选项卡,点击右下角的Refresh按钮。这将拉入对配置文件的更改。
现在应该可以了。
【讨论】:
@John:我在“管理器”窗口中没有看到任何刷新按钮,您能告诉我具体在哪里吗? 有人找到设备标签吗? 现在没有设备标签。您可以从 Window > Devices 获取它。 这很完美,但还有一件有趣的事情也可能发生。如果设备日期设置为晚于您的配置文件到期,则会出现此错误...:D 用于分发配置文件。它抛出同样的错误。我相信分发设备不存在问题。【参考方案3】:如果上述方法均无效,请检查您的设备日期,确保您的设备日期不超过个人资料到期日期,即未设置为遥远的未来。
【讨论】:
您拥有IT行业所需的真正智慧。感谢您的回答。继续这个。 经过数小时的研究,我终于找到了真正的答案!非常感谢【参考方案4】:Xcode5 再次打破了这一点(恭喜 Apple 未能测试他们最有缺陷的代码之一。再次)。
打破/修复它的新方法:
如果你有:
-
您设备上的旧个人资料(团队个人资料或非团队个人资料)
任何 Xcode5 副本在 App Store 上自动生成的新配置文件,即使它只是对您已有配置文件的更新
(注意:如果任何同事将自己添加到个人资料中,则会触发上述“更改”)
您使用新的“帐户”对话框下载配置文件(注意:Apple 现在在各种情况下都要求这样做 - 所有其他方法,包括手动下载,似乎都不受支持。即使 Apple 开发人员网站告诉您手动下载!不要这样做!它会破坏 Xcode5!)
Xcode5 将在 Build Settings 的下拉选择器中错误地隐藏和重命名该配置文件
(我讨厌这个下拉菜单。Apple 的一些白痴不断从中删除信息,而其他人不断将其添加回来,它在 Xcode 点版本之间切换。为什么??!?!)
您无法选择正确的配置文件 - 无论您选择什么,Xcode5 都会使用错误的配置文件
解决方案很简单。 “Apple 工程师很懒惰”的解决方案:
-
转到 Xcode5 -> 窗口 -> 管理器 -> 设备
选择您的设备
选择配置文件
删除与您当前项目和/或团队相关的所有内容(如有必要,甚至可以删除其他项目 - 如果仍然需要,可以稍后下载它们!)
重新构建。
您应该从 Xcode5 收到配置文件不存在的错误。即使您手动选择了机器上已经存在的配置文件(是的 - 该下拉菜单又是错误的。它在于它在幕后选择的配置文件!)
在配置文件选择器中,选择“真实”配置文件
构建、运行 - 成功!
【讨论】:
【参考方案5】:+1 将我的头撞到墙上一两天...
同时检查此设置:
构建设置 -> 代码签名 -> 配置文件
按照上述步骤操作后,“自动”设置对我有用。 ~kjm~
【讨论】:
【参考方案6】:就我而言,这是在新的程序许可协议发布之后,所以我们不得不接受它们,这很好。
【讨论】:
【参考方案7】:如果您的配置文件已过期,则可能会发生这种情况。另一个原因可能是您的设备日期超过了配置文件的到期日期。请确保您的设备日期正确。
【讨论】:
【参考方案8】:当我不小心将构建置于发布模式时发生这种情况。
【讨论】:
你是在发布模式下运行的吗【参考方案9】:我遇到此错误是因为我正在测试我的应用以在将来执行某个操作。换句话说,我在测试设备上的时间不同,因此证书不允许我构建。
显然,我的证书将在几天后到期...
【讨论】:
【参考方案10】:-
从您尝试使用配置文件的帐户的钥匙串中删除所有证书
删除派生数据
清理文件夹(cmd+sht+alt+k)
清理项目(cmd+sht+k)
构建并运行
【讨论】:
【参考方案11】:确保您已添加您的设备 - https://developer.apple.com/account/ios/device/create
进入 iTunes 并单击序列号,它将更改为 UDID - 然后右键单击复制 UDID 并将其注册为您的设备。
然后您可以将该设备添加到您的配置文件中。
【讨论】:
【参考方案12】:就我而言,两个月前我在 iPhone 上手动设置时间时出现了问题。但是当我改为自动设置时间时,它工作得很好。
Setting
-> General
-> Date & Time
-> set time automatically
如果它不起作用然后自动设置mac和iPhone的时间,它可能会正常工作。
【讨论】:
【参考方案13】:我花了大约一周的时间来解决这个问题。大多数答案有点神奇(这些算法没有逻辑目的),它们没有对我有用。我在 Xcode 控制台中发现了这个错误:
ERROR ITMS-90174: "Missing Provisioning Profile - iOS Apps must contain a provisioning profile in a file named embedded.mobileprovision."
发现this answer 解决了这个问题。案例是将 Xcode Build 系统切换到 Legacy 系统。
我正在部署我的 Ionic 应用程序。
【讨论】:
【参考方案14】:File > Workspace Settings > Set Build system to "Legacy Build System"
【讨论】:
您能否解释一下为什么会这样? 文件部分没有选项工作区设置。版本 10.1 (10B61) 这个解决方案对我有用。实际上我得到的是我的设备和 Xcode 版本之间存在一些兼容性问题。【参考方案15】:花了一天的时间后,我意识到这是对项目设置的简单更改
文件 -> 项目设置... -> 构建系统 -> 旧版构建系统。
在项目设置中,您将看到名为 Build System 的下拉菜单,并在该下拉菜单中选择 Legacy Build System
【讨论】:
【参考方案16】:在浪费了我半天的时间之后,我得到了这个工作。
Select Target > Edit Scheme > Select Run > Change Build Configuration to debug
【讨论】:
如果这是必需的步骤,您将如何为 Release 构建?使其无法使用。 默认模式是调试模式,但是如果你需要在发布模式下构建,那么你可以并且你可以通过构建的任何安装链接安装在设备上,当你上传到 AppStore 时,它会自动管理。 这是关键。谢谢!我搜索了几个小时......以上是关于找不到此可执行文件的有效配置文件...(再次)的主要内容,如果未能解决你的问题,请参考以下文章