权限指定... 配置文件(0xE8008016)。 iOS 4.2错误

我得到了“可怕的”错误 < Code > 应用程序的代码签名权限文件中指定的权限与配置文件中指定的权限不匹配。 (0xE8008016).当试图将我的第一个应用程序部署到 iOS4.2.6(Verizon)上一个未越狱的设备上时。问题是,我的项目中没有 Entitlements file,因为我根本没有发布它,只是把它放在一个设备上。我已经通过了所有的环和循环苹果让你通过(证书,设备,供应)到字母,我不能找出什么是错误的。译注:

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

137665 次浏览

删除您的供应配置文件,执行“清除所有”,确保您的供应设置是正确的,重新下载,并尝试再次运行。

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

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

对于特别的发行版,自然需要将其设置为 NO,但是我只是想提一下,以防其他人遇到同样的问题。

我对 iCloud 的权利有这个问题。我的问题是我忘记在供应门户中为我的应用程序 ID 启用 iCloud。

在为您的 AppID 启用 iCloud 之后,您将需要重新创建供应配置文件。

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

但是当我在 Xcode 4 > Organizer > Device > Provisoning Profiles 中选择“自动设备配置”时,它终于起作用了。

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

对我来说,它与权利文件或特别..。

我正在回到旧项目,我忘了把我的新 iPhone 加入到这个项目中。

愚蠢的错误,还有一个愚蠢的对应错误消息... :-/

对我来说,这是个愚蠢的错误。我错误地将“ Run”方案设置为使用“ Distribution”构建配置而不是“ Debug”或“ Release”配置。 愚蠢的错误,但它需要一段时间来调试它,所以我要添加我的答案,以改善堆栈溢出内的知识库!

删除 xcuserdata 文件夹解决了我的问题

对我有效的方法是完全删除权利文件,从组列表中,以及从 Project 和 Target 中的 Build Settings 中。然后,我从目标中的 Summary 选项卡中重新创建了权限,并且它加载得很好,没有任何错误消息。

如果您试图激活 iCloud 同步,则需要为用于创建开发供应配置文件(Xcode 会自动这样做)的 AppID 启用 iCloud。您还需要为发行版配置文件启用此功能。

棘手的是,当你在 Xcode 刷新配置文件时,这不会触发配置文件的更新,它们只是被重新下载。因此,在 Provisoning/Development 下的 iOS Provisoning Portal 中,您需要检查标记为(由 Xcode 管理)的配置文件并删除它(删除选定按钮)。这样做的所有配置文件,开发和发行,你需要重新生成。

现在,在 Xcode 的“组织者”中,删除即将替换的供应配置文件。

现在去买新的。如果您为多个团队开发,并且只想刷新特定的团队,请在 TEAMS 下的左窗格中选择适当的 Team,否则在 LIBRARY 下选择 Provisoning Profiles,然后选择 Refresh。

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

我只是说说我的看法。对我来说,以上这些都不起作用,所以我不得不放松下来,用全新的眼光看待这个过程的每一个环节。

在匆忙中,我忘记了我正试图在一个全新的设备上安装我的应用程序。

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

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

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

  1. 进入组织者
  2. 设备
  3. 选择你的设备
  4. 删除特定的配置文件。
  5. 再跑一次

多多..。

在我的例子中,看起来像是 Xcode (秘密地)重置了 Scheme。 我发现 Archive 的构建配置被设置为 Release,而不是发布版本,在我将其更改为正确的版本后,它工作了。

我认为这是更好的检查方案,以及建设设置。

我的问题是,该方案将存档点设置为发布,而构建设置中的发布将代码签名标识设置为自动配置文件选择器之一。那么“自动”做了错误的事情(事实上改变了什么,因为它指向两天前) ,并指向一个不同的配置文件,而不是我在创建特别发布时选择的配置文件。将标识指向显式设置并在分发时使用相同的配置文件解决了这个问题。

根据你的应用程序包 ID 检查你的权利。很可能是不一样的。

这仍然不工作的方式是,当我导出测试在我的设备,但在发布模式。

对我有用。

  1. 在 Safari 中打开 iOS 供应门户。
  2. 点击侧边栏中的“设备”。
  3. 注册设备的 UDID
  4. 点击“供应配置文件”
  5. 编辑你的应用程序配置文件。
  6. 选择刚刚添加的设备。
  7. 下载. mobile 条款文件。
  8. 安装它。
  9. 重建。

如果您有 Apple IOS Developer 的证书,就不需要为 key 设置值: “ Code Signing Entitments”。 构建设置-> 代码签名授权-> 删除那里的任何值。

我今天碰到了这个问题,我揪着头发想弄明白。像这里的许多人一样,如果我删除我权利文件中的 iCloud 选项,它就会工作。当我启用 iCloud 选项调试应用程序时,我会得到0xe8008016错误。这是在撤销和重新生成新证书之后进行的。

所以对我来说,解决这个问题的办法是打开 iCloud 对自动生成的 Xcode 团队概要的支持。登录到在线供应工具,转到 App IDs,单击 Xcode iOS Wildcard App ID,单击 edit,通过勾选复选框启用 iCloud,最后单击 Done。刷新你在 Xcode 的个人资料,然后它就会开始工作。

这是有一定道理的——当您在调试时,它默认为团队配置文件,并且团队配置文件需要打开 iCloud。

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

1. 进入摘要
摘要有 keychain 组和删除 keychanin 群体的目标。

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

我有相同的问题作为’剪刀’以上-我忘记添加我的手机到一个更新的开发配置文件!只需到供应门户,添加您的手机,然后下载新的配置文件。我同意——你得到的信息没有多大帮助!

我通过再次(一次又一次)生成供应配置文件来修复这个问题。

当我试图错误地使用应用程序商店分发配置文件进行本地测试时,这种情况发生在我身上。当我使用适当的开发配置文件时,它工作得很好。也许这也能帮到别人。

这招对我很管用。

  1. 我从 target中删除了 Entitlements文件。
  2. 把我所有设备上的应用都删了
  3. 在 Xcode 的建筑
  4. * 可选地删除供应配置文件并重新添加它

希望对你们也有用:)

我正在使用 xcode 6,在一个特定的 iphone4上遇到了这个问题

最后,我转到 device = > provision profile = >

然后手动添加配置文件,问题就解决了。

对我来说,问题是试图用应用程序商店分发证书来签署应用程序。将证书切换到 Xcode 生成的 Team 供应配置文件解决了这个问题。

对我来说,在 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发布的,但是之前没有这样的错误。

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

后面的屏幕看起来像:

enter image description here

对我来说,这与证书没有任何关系。应用程序现在可以在设备上成功运行。

将权限文件保存在目标 > 构建设置 > 代码签名 > 代码签名权限中。

转到目标 > 能力。 在其中一个功能上切换开/关/关。

快跑。

我的应用程序也有同样的问题,几个月后这个特定的应用程序运行良好。

问题是在我的 Xcode 项目中配置的能力(在 Targets-> { ProjectName }-> Capability 下)与配置文件中配置的能力不一样(你可以在苹果会员中心的 Identifier-> App ID-> { your App ID }下检查这一点。在会员中心,我看到游戏中心是启用,所以在我的项目我也启用了游戏中心。然后应用程序就可以启动了。

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

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

这就解决了我的问题: 删除“目标”生成设置的“代码签名权限”部分中的路径。

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

还有一个潜在的问题会抛出这个错误消息: 如果您正在为主应用程序使用一个完全有效的供应配置文件,但为 Today 小部件扩展使用了一个过期或无效的供应配置文件。我想这对于苹果手表的扩展也是一样的。

检查所有资料!

检查钥匙链访问!

在我的例子中,我使用了与供应配置文件相关联的错误分发证书。

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

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

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

我从苹果开发者那里得到的供应配置文件与我的 Xcode 功能相匹配,但是它仍然不能构建到我的设备上,直到我做了以下事情:

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

  2. 回到 Xcode 能力选项卡

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

对我有用,希望能帮到别人。

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

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

如果供应配置文件是“ adhoc”,则不能进行调试,只能导出“。Ipa”文件,导入到 iTunes 进行安装。

我在 Xcode 8上遇到过这种情况,部分原因是新的 Provisioning Profile构建设置,因为在这个 Xcode 版本中有两个供应配置文件条目:

  • 供应概况
  • 供应概况(已弃用)

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

对于我检查“自动管理签名”选项在目标解决问题!

如果使用的是反应本机,请确保 Test 目标具有与主目标相同的配置配置文件。

当我遇到这种情况时,这似乎对我有效:

  • 关闭能力下的所有权限
  • 安装带有基本配置文件的应用程序(没有应用程序组,没有 push,没有密钥链共享等)
  • 将权限更改回来并切换回适当的供应配置文件。

仅仅关闭/打开应用程序对我来说不起作用,包括卸载和重新安装应用程序,删除衍生数据,重新启动 Xcode。看起来我实际上不得不在这个配置中部署应用程序,以便它能够正常工作。

当我的供应配置文件被更新并重新加载到 Xcode 中时,我遇到过几次这样的问题。配置配置文件允许的权限没有任何改变,所以一切都应该和以前一样匹配。它可能已经工作删除我的权利文件,并重新创建它作为其他连根拔起的答案建议,从能力标签,太多; 但我使用上述方法,以避免随机/无操作的变化,我的权利文件,签入源代码控制。