指定的权利...个人资料。 (0xE8008016)。错误iOS 4.2

时间:2011-03-09 02:58:09

标签: iphone objective-c code-signing provisioning-profile code-signing-entitlements

在尝试将我的第一个应用程序部署到iOS 4.2.6(Verizon)上的非越狱设备时,我收到了'可怕'错误The entitlements specified in your application’s Code Signing Entitlements file do not match those specified in your provisioning profile. (0xE8008016).。问题是,我的项目中没有Entitlements file,因为我根本没有分发它,只是把它放在一个设备上。我已经完成了苹果让你通过的所有箍和循环(证书,设备,配置)到字母,我无法弄清楚出了什么问题。

有人可以帮我解决这个问题吗?

40 个答案:

答案 0 :(得分:64)

我自己遇到过这个问题,问题是我在项目中有一个Entitlements.plist文件作为临时分发的一部分,它的get-task-allow(即'可以调试')属性是设置为NO - 将此设置为YES修复了问题并允许应用程序在开发中的设备上从Xcode4运行。

当然需要将其设置为NO以进行临时分发,但我想如果其他人遇到同样的问题我会提及它。

答案 1 :(得分:50)

我在Xcode 4.2.1中遇到过这个问题。

对我而言,它与Entitlements文件或Ad-hoc ......无关;

我回到了旧项目,我忘记将新iPhone添加到该项目中。

愚蠢的错误,但也是一个愚蠢的相应错误信息......: - /

答案 2 :(得分:38)

如果您使用的是react-native,请确保测试目标与主要配置文件具有相同的配置文件。

答案 3 :(得分:29)

我对iCloud权利有这个问题。我的问题是我忘记在配置门户中为我的App ID启用iCloud。

为您的App ID启用iCloud后,您需要重新创建配置文件。

答案 4 :(得分:20)

将您的权利文件保存在Target>构建设置>代码签名>代码签名权利。

转到目标>能力。 切换开/关或关/开其中一项功能。

运行。

答案 5 :(得分:19)

对我来说有用的是完全删除权利文件,从组列表以及Project和Target中的Build Settings。然后,我从目标中的“摘要”选项卡重新创建了权利,并且加载正常,没有任何错误消息。

答案 6 :(得分:15)

这里只需要5美分。对我来说,上述情况都没有,所以我不得不强调压力,实际上用新鲜的目光看待这个过程的每个部分。

急于求成,我忘记了我正在尝试在全新的设备上安装我的应用程序。

所以我的错误是我没有通过在配置门户中的配置文件设置的“设备”部分中勾选我的新设备来更新我的配置文件。

显然,在配置文件中不包括您的设备也会生成此错误消息。

答案 7 :(得分:12)

许多答案都没有为我修复0xE8008016错误。

但是当我在Xcode 4中选择“自动设备配置”时>组织者>装置>配置文件,它终于奏效了。

答案 8 :(得分:11)

在我的情况下,这是一个愚蠢的错误。我错误地将“运行”方案设置为使用“分发”构建配置而不是“调试”或“发布”构建配置。 愚蠢的错误,但它需要一段时间来调试它,所以我将添加我的答案来改善堆栈溢出内的知识库!

答案 9 :(得分:10)

删除您的配置文件,执行“全部清除”,确保您的配置设置正确,重新下载,然后尝试再次运行。

答案 10 :(得分:4)

对我来说,请检查"自动管理签名" Target中的选项可以解决问题!

答案 11 :(得分:4)

我的应用程序遇到了同样的问题,几个月后这个特定的应用程序工作正常。

问题是我的Xcode项目中配​​置的功能(在目标 - > {ProjectName} - >功能下)与配置文件中配置的功能不同(您可以在Apple会员中心检查该功能)在标识符下 - >应用程序ID - > {您的应用程序ID}。在会员中心,我看到游戏中心已启用,因此在我的项目中我也启用了游戏中心。然后应用程序就可以启动了。

直到现在我还不知道它是如何运作的。这仍然是一个谜:)

答案 12 :(得分:4)

  1. 在Safari中打开“iOS配置门户”。
  2. 点按侧栏中的“设备”。
  3. 注册设备的UDID
  4. 点按“配置资料”
  5. 修改您的应用个人资料。
  6. 选择刚刚添加的设备。
  7. 下载.mobileprovision文件。
  8. 安装它。
  9. 再次建造。

答案 13 :(得分:3)

删除xcuserdata文件夹解决了我的问题。更多相关内容:https://stackoverflow.com/a/9968884/300694

答案 14 :(得分:3)

如果您没有更改与证书相关的任何内容(没有替换或更新它们),请执行Product -> Clean。它帮了我几次。 (Xcode 6.2)

答案 15 :(得分:2)

当我尝试使用应用程序商店分发配置文件进行本地测试时,我发生了错误的操作。当我使用正确的开发配置文件时,它工作得很好。也许这对某人也有帮助。

答案 16 :(得分:2)

升级到XCode 4解决了这个问题。

答案 17 :(得分:2)

这对我有用......

  1. 我从Entitlements
  2. 删除了target文件
  3. 删除了我所有设备上的应用
  4. Cleaned Xcode中的构建
  5. *可选删除配置文件并重新添加
  6. 希望它对你们有用:)

答案 18 :(得分:2)

这就解决了我的问题:删除Targets构建设置的Code Signing Entitlements部分中的路径。

答案 19 :(得分:2)

Apple开发人员的配置文件与我的Xcode功能相匹配,但在我执行以下操作之前,它仍然无法构建到我的设备上:

  1. 从Xcode项目中删除/删除权利文件。

  2. 返回Xcode功能选项卡

  3. 点击"修复问题"按钮,让Xcode重新添加权利文件。

  4. 为我工作,希望它有所帮助。

答案 20 :(得分:2)

我今天遇到了这个问题,我正在试着想出来解决问题。像这里的很多人一样,如果我删除了我的权利文件中的iCloud选项,它会起作用。当我在启用iCloud选项的情况下调试应用程序时,我会收到0xe8008016错误。在撤销和重新生成新证书之后,这是正确的。

所以为我解决的是为自动生成的Xcode团队配置文件启用iCloud支持。登录在线配置工具,转到App IDs,点击Xcode iOS Wildcard App ID,点击edit,选中复选框启用iCloud,最后点击Done。在Xcode中刷新您的配置文件,然后它将开始工作。

这是有道理的 - 当你进行调试时,默认为团队资料,团队资料需要打开iCloud。

答案 21 :(得分:2)

在Xcode 8上发生了我,它部分是由新的Provisioning Profile构建设置引起的,因为在这个Xcode版本中有两个条目供应配置文件:

  • 供应资料
  • 供应资料(已弃用)

我的错误是我只更新了第一个,并且已弃用的条目仍然指向无效的配置文件。将两者更改为相同的值可以解决问题(清除已弃用的条目也应该具有相同的效果)。

答案 22 :(得分:1)

我正在处理的代码在Info-plist中有一个与Product Bundle Identifier构建设置中不同的bundleid。

我发现这是因为我在设备视图中的设备控制台中注意到此消息:

MIS: entitlement 'application-identifier' has value not permitted by provisioning profile 'iOS Team Provisioning Profile: com.xxx.yyy'

答案 23 :(得分:1)

我有旧项目和同样的问题,我解决了。

1.转到摘要
 2.Summary有钥匙串组和删除keychanin     群体的对象。

我希望它对你有用。 问候。

答案 24 :(得分:1)

我正在使用xcode 6并遇到一个特定的iphone 4的问题

最后,我去了device => provision profile =>

然后手动添加配置文件并修复问题。

答案 25 :(得分:1)

对于我来说,在Xcode 5.1中,当我尝试在我的设备上测试应用时,我得到The entitlements specified in your application’s Code Signing Entitlements file do not match those specified in your provisioning profile.。设备开发证书必须在2015年2月到期。

问题已解决:

选择Target->Capabilities,在GameCenter下,我在这里得到了GameCenter权利的错误,因为它没有添加到项目中,虽然第一个版本的应用程序是通过相同的XCode 5.1发布的,但之前没有这样的错误。 / p>

下面是一个标题为Fix Issue的按钮。点击后,它添加了GameCenter权利并解决了问题。

看病后,屏幕显示如下:

enter image description here

对我而言,与证书无关。应用程序现在可以在设备上成功运行。

答案 26 :(得分:1)

就我而言,看起来Xcode(秘密)重置了Scheme。 我发现Archive的构建配置设置为Release而不是分配版本,在我将其更改为正确的版本后,它就可以工作。

我认为最好检查一下Schemes以及构建设置。

答案 27 :(得分:1)

另一个可能引发此错误消息的潜在问题:如果您为主应用程序使用完全有效的配置文件,但您的今日小部件扩展程序的配置文件已过期或无效。我想它对于Apple手表扩展也是一样的。

检查所有个人资料!

答案 28 :(得分:0)

检查KeyChain Access!

在我的情况下,我使用了与配置文件关联的错误的分发证书。

答案 29 :(得分:0)

我也遇到了同样的问题,我就是这样的解决方案。

首先要明确的是:配置文件必须选择“自动”进行调试。

如果配置文件是“adhoc”,则无法调试,只能导出“.ipa”文件,导入iTunes进行安装。

答案 30 :(得分:0)

当我遇到这个时,这似乎对我有用:

  • 关闭“功能”
  • 下的所有权利
  • 使用基本配置文件安装应用程序(没有应用程序组,没有推送,没有钥匙串共享等)
  • 更改权利并切换回适当的配置文件。我使用源代码控制来撤消上述更改。

单独关闭/打开权利对我来说并不起作用 - 包括在两者之间卸载和重新安装应用程序,删除DerivedData,以及重新启动Xcode。看起来我实际上必须在此配置中部署应用程序才能恢复正常工作。

我的配置文件更新后,我已多次遇到此问题,并将其重新加载到Xcode中。配置文件允许的权利没有任何变化,所以一切都应该像以前一样匹配。它可能已经删除了我的权利文件,并从“功能”选项卡中重新创建了其他连根拔起的答案。但我使用上述方法来避免对我的权利文件进行随机/无操作更改,该文件已签入源代码管理。

答案 31 :(得分:0)

当我尝试在新设备上安装我的应用时发生这种情况。 我通过为所有配置文件选择自动来解决它。在这样做并尝试再次安装之后,它现在让我知道我只需要将这个新设备添加到我的个人资料中,然后给了我一个Fix Issue按钮,它解决了它。

答案 32 :(得分:0)

我的问题是尝试使用应用商店分发证书签署应用程序。将证书切换到Xcode生成的团队配置文件修复了该问题。

答案 33 :(得分:0)

我通过再次(再次)生成我的配置文件修复此问题。

答案 34 :(得分:0)

我遇到与上面'Snips'相同的问题 - 我忘了将手机添加到更新的开发配置文件中!只需转到配置门户,添加您的手机和放大器即可。然后下载新的个人资料。并同意 - 你得到的信息不是很有帮助!

答案 35 :(得分:0)

如果您拥有Apple IOS Developer的证书,则无需为密钥设置值:“Code Signing Entitlements”。 构建设置 - >代码签名权利 - >删除那里的任何值。

答案 36 :(得分:0)

根据您的应用套装ID检查您的权利。很可能它不一样。

这仍然不起作用的方式是我在我的设备中导出测试但是在发布模式下。

那对我有用。

答案 37 :(得分:0)

我的问题是该方案将Archive指向Release,而Build Settings中的Release将Code Signing Identity设置为自动配置文件选择器之一。好吧,“自动”做了错误的事情(实际上改变了两天前它所指出的内容),并指出了一个不同于我在创建ad-hoc版本时选择的配置文件。将标识指向显式设置并在分发时使用相同的配置文件修复问题。

答案 38 :(得分:0)

如果您尝试激活iCloud同步,则需要为用于创建开发配置文件(Xcode自动执行)的AppID启用iCloud。您还需要为分发配置文件启用此功能。

棘手的部分是,当您在Xcode中刷新配置文件时,这不会触发更新配置文件;他们只是重新下载。因此,在Provisioning / Development下的iOS Provisioning Portal中,您需要检查标记的配置文件(由Xcode管理)并删除它(Remove Selected按钮)。为所有配置文件,开发和执行此操作分配,你需要重新生成。

现在,在管理器中的Xcode中,删除您要替换的配置文件。

现在要换新的。如果您为多个团队开发并且只想刷新特定团队,请在TEAMS下的左窗格中选择相应的团队,否则选择LIBRARY下的Provisioning Profiles,然后选择Refresh。

最后,删除设备上可能与新配置文件冲突的所有旧配置文件,因为配置文件永远不会自动删除;较新的配置文件只是添加到列表中。

答案 39 :(得分:-2)

这些步骤解决了我的问题:

  1. 进入组织者
  2. 设备
  3. 选择您的设备
  4. 删除特定的个人资料。
  5. 再次跑步
  6. ...多田