配给配置文件不包括应用程序标识符和钥匙串访问组权限

时间:2019-03-13 00:27:42

标签: ios xcode

我已经尝试了所有其他问题,并搜索了所有可以解决的问题,许多其他问题涉及正在更新的现有应用程序或具有开发人员帐户的人,但这就像我第二次使用Xcode一样,曾经工作过。

这只是突然发生。我不断收到这两个错误,它允许我运行模拟器,但不能在iPhone上构建

  1. 自动签名无法解决“ LearningSpriteKit”目标的权利问题。 自动签名无法将应用程序标识符和钥匙串访问组权限添加到您的配置文件中。切换到手动签名,并通过从开发者网站下载匹配的配置文件来解决问题。或者,要继续使用自动签名,请从您的权利文件中删除这些权利,并从您的代码中删除其相关功能。

  2. 供应配置文件“ iOS团队供应配置文件:#####。LearningSpriteKit”不包括应用程序标识符和钥匙串访问组权限。

16 个答案:

答案 0 :(得分:59)

此问题与 Bug 1534145. SSL.com: P-384 curve / ecdsa-with-SHA256 certificates 有关。

苹果公司的一位代表估计558,000个证书将失效: Bug 1533655. DigiCert: Apple: Non-compliant Serial Numbers

GoDaddy,Google,Apple和Facebook(这可以解释为什么今天的Facebook出现故障)受到影响。

他们正在努力解决问题。

这将解释我们的问题,伙计们!

更新:问题已解决。尝试刷新您的项目。

答案 1 :(得分:23)

解决方法:更改捆绑标识符和/或版本

答案 2 :(得分:22)

我在Time Machine上恢复了一个配置文件后,在启动该配置文件后,Xcode会立即删除该配置文件并将其替换为新的配置文件。关键的区别似乎是旧配置文件具有get-task-allow权利,而新配置文件没有权利。这肯定在苹果公司的末尾被打破了。

编辑:权利还应该包括钥匙串访问组,但同样,根本没有权利。应该是这样的:

Good entitlements

答案 3 :(得分:18)

编辑

  

根据最新更新,Apple已成功解决自动编码   使用免费帐户签名问题。

     

我尝试过,我可以确认它已解决。

     

请尽力尝试。

更新

  

使用最新的 XCode 10.2 进行了测试,并且工作正常+他们进行了改进   Xcode和代码签名整体功能的性能。

当我从Xcode创建一个新的Profile时,我也面临着同样的问题,如果我去其他项目并在那里检查,我也面临着以下相同的问题。

Enter image description here

由于这个问题,我的项目都无法使用旧的配置文件和证书进行构建。

一个奇怪的问题,因此我检查了一个新创建的配置文件,并与旧的配置文件进行比较,发现应用程序ID 是未知的,并且新创建的配置文件中没有“权利”详细信息。

检查以下旧的和新的配置文件比较的屏幕截图:

旧个人资料:

Enter image description here

新个人资料:

Enter image description here

因此这意味着它无法在新配置文件中设置应用ID 权利。这将导致所有旧配置文件无法正常工作,并在所有项目中产生相同的错误。

问题解决方法:

第1步::转到Provisioning Profile文件夹(路径:〜⁨Library⁩▸⁨MobileDevice⁩▸⁨ProvisioningProfiles⁩)。

或使用快捷方式直接跳入该文件夹,例如 CMD + Shift + G 并输入~/Library/MobileDevice/Provisioning Profiles它将重定向您的查找器直接位于Provisioning Profiles文件夹中。

第二步:按修改日期短的文件夹。

第3步::使用未知应用ID检查配置文件,并删除所有未知配置文件。

第4步:返回Xcode并检查所有旧项目是否按预期工作。

  

注意:请确保引起此问题的新应用保留该项目   关闭。否则,它将使用未知的应用ID创建新的配置文件。

我希望这会有所帮助,苹果会尽快解决此错误!

答案 4 :(得分:16)

苹果似乎打破了自动签名系统。 我当时在玩一些项目,而Xcode只是获取了错误的配置文件。

这对我有用:

  1. 在项目目标中关闭“自动管理签名”
  2. 转到~/Library⁩/⁨MobileDevice⁩/⁨Provisioning Profiles⁩
  3. 删除以前下载的配置文件
  4. 再次打开“自动管理签名”

答案 5 :(得分:15)

此问题已解决,但仍有一些人对此有疑问。如果您是其中之一,请尝试以下操作:

1。。在目标设置的“常规”标签中-取消选中自动管理签名选项

2。。关闭Xcode(完全不只是您的项目)

3。擦除.mobileprovision下的~/Library/MobileDevice/Provisioning Profiles/个文件

4。。在“ 钥匙串访问” 中,删除以下内容:

  • iPhone开发人员:youremail@email.com
  • 开发人员ID认证机构
  • 苹果全球开发者关系认证中心3。

5。。在iOS设备上删除该应用程序

6。。重新启动Mac和iOS设备

7。。再次打开Xcode

8。。更改捆绑标识符(即使是单个字符,也要在使用后将其更改回原始字符)

9。。选中Automatically manage signing选项

10。。使用USB连接iPhone / iPad。

11。。确保您信任iOS设备上的证书

这应该对您有用。

答案 6 :(得分:14)

更新:此解决方案仍然适用于2019年3月20日UTC + 0

解决方案:无需重新安装Xcode。我使用了全新的免费AppleId,但后来使用我的旧AppleID进行了检查,它也可以正常工作。

  1. 在Xcode的常规标签下,取消选中自动管理签名选项
  2. 关闭Xcode。
  3. 删除~/Library/MobileDevice/Provisioning Profiles中的旧个人资料:

    cd ~/Library/MobileDevice/Provisioning\ Profiles
    
    rm -rf *
    
  4. 在MacOS上,运行 Launchpad Other Keychain Access 并删除所有与iPhone开发相关的证书,如以下四个在图片上:

    • 苹果全球开发者关系认证中心
    • 开发人员ID认证机构
    • iPhone开发人员:your_name_or_email

      Remove certificates

  5. 在iPhone上卸载旧应用。重新启动iPhone和Mac

  6. 打开Xcode并更改应用程序的捆绑包标识符,至少一个字符(以后您可以还原此更改)
  7. 在Xcode中启用Automatically manage signing选项。

此后,您应该可以在设备上运行和调试应用了。

如果您遇到“ iPhone拒绝了启动请求”问题,则解决方法是在answer to Stack Overflow question iOS 12 iPad Denied Launch Request - Xcode中。

简而言之,您需要在Xcode中转到菜单产品方案编辑方案... ,然后选择 Executable :在发射时询问

答案 7 :(得分:10)

这个问题似乎已经解决,个人帐户可以再次自动退出其应用程序。

关于@Paul答案,与卸载Xcode没有关系。它是从服务器端固定的。

唯一需要做的就是从您的钥匙串中删除Apple Developer Certificate(用于个人帐户),以便Xcode重试以生成并下载一个新证书。

答案 8 :(得分:10)

这是解决方案:

  1. 打开Xcode。

  2. 选择您的开发人员帐户,然后再次显示错误。

  3. 转到钥匙串应用

4.a)转到证书部分

4.b)删除所有(有效和无效)证书(我有三个有效,许多无效!)

Remove certificates

  1. 删除最后一个证书后,macOS将为活动的开发者帐户自动重新创建新证书。

  2. 在iDevice中运行您的应用程序。您需要输入系统密码,才能将新创建的证书添加到钥匙串中。

如果在第二次运行中显示

  

您的iPhone拒绝了启动请求

只需转到:

产品方案→*编辑方案:取消选中“调试可执行文件”

我希望它能解决您的问题。

答案 9 :(得分:8)

我通过执行以下步骤使其工作:

  1. 转到Xcode
  2. 首选项
  3. 帐户
  4. 管理证书
  5. 加号
  6. iOS开发
  7. 完成
  8. 下载手动配置文件
  9. 关闭
  10. 转到目标
  11. 将开发团队变更为无人
  12. 将开发团队更改为您以前的团队

应该可以。

答案 10 :(得分:7)

也许论坛帖子 [iOS 12 SDK] - deadline March 2019 - Legacy Mode 可能有帮助。

它谈到了Apple截至2019年3月拒绝在SDK 12下构建iOS应用程序(自2018年12月起运行)

我还没有尝试过,但是可能与问题有关。我有一个免费的开发人员帐户,也遇到了这个错误。

以下是屏幕快照,以防链接发生更改(下面的屏幕截图 1 )。

这是first screenshot的链接(下面的截图 2

  

1 sdk_12_issue

     

2 iphone_xs_max_support_image

答案 11 :(得分:7)

我终于能够再次部署到我们的iOS设备。这是我为使其正常工作所采取的步骤。

首先,我关注了all 10 steps in Zameer's answer here。我已将它们复制到下面:

  
      
  1. 在XCode中打开您的项目。
  2.   
  3. 从项目导航器中选择您的项目,然后从列中选择目标
  4.   
  5. 点击常规标签,然后在签名部分下,确保启用“自动管理签名”
  6.   
  7. 点击功能标签,并同时打开打开“应用组” “钥匙串共享” 设置。这可能会引起   “自动签名失败” 弹出错误,只需单击“取消”即可消失。
  8.   
  9. 这将为您在项目导航器的项目文件夹中为您生成一个名为 nameProject.entitlements 的权利文件。
  10.   
  11. 将此授权文件移到文件夹的外部,位于项目文件的正下方。
  12.   
  13. 再次选择目标,然后返回功能标签以同时关闭 “应用组” “钥匙串共享” “   设置。这可能再次引发“自动签名失败” 弹出窗口   错误,只需单击“取消”即可使其消失。
  14.   
  15. 现在在目标上方选择您的项目,然后转到建筑设置标签。
  16.   
  17. 向下滚动到 Signing 标头下的 Code Signing Identity 设置,然后从每个下拉列表中选择 iOS Developer
  18.   
  19. 在上述签名标题下,双击代码签名权利旁边的文本字段,然后输入您的名称   权利文件 nameProject.entitlements
  20.   

完成这10个步骤后,XCode中的2条红色授权错误消息消失了,我得以将XCode测试应用程序构建并部署到iPhone上并运行它。

尽管XCode测试应用程序可以构建和部署,但是我在使用Xamarin的PC上进行开发,但是无法将Xamarin.iOS应用程序部署到我的iOS设备,并且在Visual Studio中不断出现错误:the executable was signed with invalid entitlements。我做了以下事情,现在我可以部署Xamarin应用程序并在我的iOS设备上运行它:

  1. 我从Mac的~/Library/MobileDevice/Provisioning Profiles目录中删除了配置文件。 XCode立即生成了一个新的提供概要文件(我不确定此步骤是否必要,但我只是在编写它,因为这就是我所做的)。
  2. 我更改了Xamarin.iOS.csproj文件,并从Entitlements.plist元素中删除了CodesignEntitlements,现在看起来就像<CodesignEntitlements></CodesignEntitlements>。 Visual Studio自动将两个元素添加到项目中的同一属性组中,这可能不是必需的,但我想我会提到:<CodesignExtraArgs /><CodesignResourceRules />

答案 12 :(得分:6)

对于macOS Big Sur Beta

  1. 在Xcode 11中存档
  2. 使用Xcode 12 beta组织者上传(窗口->组织者)

答案 13 :(得分:5)

对我来说,它终于再次起作用。他们只是解决了这个问题,或者我的其他任何步骤都对您有所帮助:

  1. 卸载Xcode和所有相关文件(使用AppCleaner)
  2. 通过App Store安装Xcode
  3. 更改应用程序的捆绑包标识符
  4. 从钥匙串中删除所有“ iOS开发人员”钥匙

答案 14 :(得分:5)

这是一个临时解决方法:

  1. 更改捆绑包标识符目标常规身份捆绑包标识符 (将其设置为与当前不同的值)
  2. 更改版本目标常规身份版本
  3. 禁用调试可执行文件产品方案编辑方案(取消选中 “调试可执行文件”
  4. 删除配置文件~/Library/MobileDevice/Provisioning Profiles删除此文件夹中的所有内容。

您现在应该能够在模拟器和设备上构建和运行项目。

答案 15 :(得分:5)

此错误还有另一个潜在原因。如果您在Xcode环境中没有有效的签名开发证书设置,则会抛出与OP发布的类似错误。

您可以通过Apple链接here签出开发证书的状态。