应用程序缺少有效的 aps-environment 权限。

46

当我将启用推送通知的iPhone应用程序的Ad Hoc版本加载到设备上时,遇到了以下错误:

应用程序中找不到有效的aps-environment权限

这是什么意思,我该如何修复它?


刚在使用 PhoneGap Build 和 Notification 插件时遇到了同样的错误(因为我使用的是开发者证书,无法与通知一起使用)。不过,解决方法是在 developer.apple.com 上创建一个 AdHoc 分发配置文件,然后在 Phonegap Build 中使用该配置文件和分发证书进行编译。但在此之前,需要从 iPhone 上卸载应用程序,并从“设置>通用>描述文件”中删除相关的配置文件。另请参见:http://community.phonegap.com/nitobi/topics/genericpush_ios_error - Fredrik Johansson
10个回答

48

我找到了解决方案。在我的项目信息中,在“构建” > “代码签名身份”下,我将其设置为自动,并选择了一个未启用推送通知的 AdHoc 分发配置文件(它是错误的)。我已经选择了正确的配置文件,错误已经消失。


19

在创建 Provision Profile 之前,必须为您的 App ID 启用推送通知。

因此,请按照以下顺序执行:

创建您的 APP ID

启用 APNS

创建 Provisioning Profile


13
您需要启用目标 -》 能力 -》 推送通知。我在使用Xcode 8.1时遇到了这个问题。

图片描述


对于我的开发者和AdHoc的配置文件,它对我起作用了!谢谢。 - Rondinelli Morais

10

在我这种情况下,Xcode 使得配置文件无效(在会员中心中会显示出来)。

有效的方法是在会员中心启用了应用程序推送之后,在Xcode中刷新所有的配置文件

以下是苹果关于如何刷新计算机上所有配置文件的指南。 https://developer.apple.com/library/prerelease/ios/documentation/IDEs/Conceptual/AppDistributionGuide/MaintainingProfiles/MaintainingProfiles.html#//apple_ref/doc/uid/TP40012582-CH30-SW26

简而言之,请打开Xcode并执行以下操作:

  1. 在Xcode首选项窗口中,单击帐户。

  2. 选择您的团队,然后单击“查看详细信息”。

  3. 在弹出的对话框中,在Provisioning Profiles表格下方右下角点击“刷新”按钮。

    Xcode会更新Provisioning Profiles表格中的配置文件列表。


3
生成一个特定于您的App ID的配置文件(启用推送通知),不要使用通配符配置文件。

这个答案对我很有帮助!谢谢! - k06a

1
我一遍又一遍地进行这个过程,但总是犯同样的错误......我一直在使用开发(DEVELOPMENT)配置文件,这是行不通的。
你需要使用 ADHOC 配置文件。

http://lostincompilation.co/2015/09/xcode-debugging-failed-to-get-the-task-for-process/ - Pierre

0

即使使用开发配置文件,它也可以正常工作,但如果事后添加了APN(Apple Push Notifications),请确保进入会员中心并再次打开预配配置文件(我的显示为无效),只需打开并关闭它即可使其重新有效,然后通过设置在Xcode中更新我的配置文件,一切都可以正常工作。


0
在我的情况下,我重命名了应用程序。因此,预配配置文件是为旧的应用程序ID生成的。我所要做的就是更改应用程序ID并添加一个新的预配配置文件,其中包含新的应用程序ID。

0

如果您没有编写原始代码并且不确定其工作方式,请确保已设置接收正确类型的推送通知令牌。我曾经遇到过一个问题,即我正在处理的应用程序仅在发布版本上设置了令牌。如果其他方法都无效,并且您认为代码已正确设置,请尝试找到在线步骤执行 ad-hoc 构建并尝试。


0

对于IONIC用户:

原因:如果您使用“ionic run ios”在iPhone上运行应用程序,则也会导致相同的问题。

解决方案:您必须使用XCODE来安装应用程序到iPhone,而不是使用“ionic run ios”。

问题已解决!!!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接