在Xcode中配置配置文件-can';我不能改变这个错误

在Xcode中配置配置文件-can';我不能改变这个错误,xcode,profile,provisioning,Xcode,Profile,Provisioning,请不要在没有充分阅读的情况下将其视为重复——我已经搜索了网络和stackoverflow,发现了许多类似的问题,但没有一个修复方法有效,我不知道为什么 在开发中心,xcode配置仍然处于脱机状态并没有什么帮助,但我仍然可以手动完成这项工作 我正在准备提交应用程序,但存档的代码签名不起作用 Provisioning profile 'Company Distribution' specifies the Application Identifier 'Company.*' which doesn'

请不要在没有充分阅读的情况下将其视为重复——我已经搜索了网络和stackoverflow,发现了许多类似的问题,但没有一个修复方法有效,我不知道为什么

在开发中心,xcode配置仍然处于脱机状态并没有什么帮助,但我仍然可以手动完成这项工作

我正在准备提交应用程序,但存档的代码签名不起作用

Provisioning profile 'Company Distribution' specifies the
Application Identifier 'Company.*' which doesn't match the current
setting '2Cxxxxx3D5.Company.App'
所以问题是,它认为配置文件没有我的苹果开发者ID的前缀,当你查看设置下的代码签名选项时,你会倾向于同意,它说“配置文件包的公司分发'公司。*'”

然而,在组织者的个人资料中清楚地写着“2Cxxxxx3D5.Company.*”。Organizer中的应用程序ID是正确的,但由于某种原因,代码签名下拉框中的应用程序ID是错误的

到目前为止我有

  • 从我的机器上删除了所有配置文件
  • 已从ios中心删除所有配置文件
  • 清理了构建,清空了构建目录
  • 重新启动我的mac
  • 重启我的iPad
  • 使用javascript黑客将设备ID插入到新的配置文件中,使用新的appID,重新下载并重新导入
  • 我又犯了同样的错误,症状也完全相同,我只是不明白为什么Organizer中的配置文件是明确正确的,但似乎没有转换到配置文件屏幕上

    有人能给我一些建议吗?:)

    啊,代码设计的乐趣——它让许多试图进行构建配置设置的开发人员绊倒了。这也是Xcode中的一些不同设置与应用商店分发配置文件之间的不匹配。您必须确保三个位置的设置相同,以确保清除此错误,每个位置都与AppID关联。我回答了一个与开发证书和资源调配配置文件相关的类似问题,但是您的应用商店分发证书和资源调配配置文件需要相同的检查集:

    这个问题包括一些关于特定设置的位置的附加信息,以及从代码到设备构建的过程。可以使用一个几乎相同的过程来设置应用商店分发--将“开发资源调配配置文件”中的引用替换为“应用商店分发”配置文件,并省略那些不适用于分发版本的测试设备配置,您应该可以开始了

    如果您愿意尝试使用当前拥有的进行调试,请继续阅读:

    代码符号的核心是需要在“证书、标识符和概要文件”工具发布的每个文档中以及在Xcode项目的构建配置中匹配AppID。有几种方法可以解决此问题,可以更改配置文件和签名设置以匹配相同的AppId,也可以更改AppId以匹配配置文件。了解这些决定的后果非常重要——除非您特别需要共享钥匙链访问,并且特别不需要任何有权使用的服务(应用内购买、推送通知、iCloud、游戏中心、报摊、数据保护等)结果限制最少的选项是更改配置文件以匹配当前AppId

    成功进行代码设计构建的最快(但限制最大)路线

    您对错误的描述肯定证实了根本问题——您有一个名为“Company Distribution”的分发配置文件设置为证书、标识符和配置文件工具中的AppID,即“Company”。但是,您的应用程序指定的AppID为“2Cxxxxx3D5.Company.App”,与code sign使用的AppID不匹配。换言之,您的项目被配置为在您尝试对捆绑包“Company”进行代码设计时将捆绑包ID设置为“2cxxxxx35.Company.App”。“2Cxxxxx2D5.”部分违反了您为归档代码设计操作选择的配置文件(或者可能是Xcode自动配置文件选择器)

    AppID的“2Cxxxxx3D5.”部分看起来很像AppID前缀——这应该而不是在Xcode App ID字段中指定(或在派生该字段值的Info.plist中。Xcode根据用于执行代码签名的配置配置文件自动为您处理应用程序ID前缀。如果您的Xcode应用程序ID包含此前缀值,请将其删除,以便您的应用程序ID变为“Company.App”。在执行此操作时,应用程序的应用程序ID将成为有效的应用程序ID,因为错误指示在代码签名期间正在使用“Company.*”分发配置文件

    更可持续的修复--修复AppID并重新发布分发资源调配配置文件

    随着苹果继续发布基于“授权”的服务,在通配符配置文件下发布此应用程序可能不太合适。相反,保持最大灵活性的最佳方法是为公司的应用程序发布显式AppID,重新配置Xcode,并重新发布新显式AppID的分发配置文件。lin以上ked答案可作为如何执行除分发资源调配配置文件之外的每项任务的分步指南。在较高级别上,要完成的任务包括:

  • 更新Xcode项目中的应用程序ID以省略TeamID/应用程序ID前缀
  • 确保编辑的应用程序ID已在Apple的证书、标识符和配置文件工具中注册
  • 为新的裸体应用程序ID发布分发资源调配配置文件
  • 安装到Xcode,重新启动Xcode,然后确保Codesign设置使用新的配置文件和签名标识
  • 运行归档
  • 一旦你得到