2011-04-18 154 views
2

我有这样的错误:推送通知IOS

Error: Error Domain=NSCocoaErrorDomain Code=3000 "no valid 'aps-environment' entitlement string found for application" UserInfo=0x18cb70 {NSLocalizedDescription=no valid 'aps-environment' entitlement string found for application}

我不知道这一点。我做了一切。我重新安装了证书一千次,这个我仍然有这个错误。我已经在Entitlements.plist文件中设置了aps-environment。我的Apple开发推送证书位于钥匙串中。供应配置文件启用了推送通知。我已经设置了正确的包。我能做些什么,我需要解决方案。谢谢。

+0

当您注册通知时,例如在调用registerForRemoteNotificationTypes时,会发生这种情况吗?推送证书与设备无关,仅供尝试推送消息的服务器使用。 – tomasmcguinness 2011-04-18 09:45:38

+0

是的。这是发生错误的时候。 – flaviusilaghi 2011-04-18 09:57:47

+0

查看我在答案中发布的其他问题。这涉及您遇到的相同问题。 – tomasmcguinness 2011-04-18 09:58:35

回答

0

只见这一次......这里就是我所做的修复它:

  1. 点击你的项目(以访问其设置)
  2. 转到“生成设置”
  3. 在“守则签署“选择您要使用的确切配置文件

您应该有一个完整的AppId(不是通配符)。如果是XXXXXX。*,您应该创建一个新的AppId,以便它变成XXXXXX.com.example.YourApp,为其生成配置文件并使用它来签署您的应用。

1

有一件事我没有在回答许多问题APNS看到的是:

如果你的项目有多个目标,确保你选择你正在运行的目标,并在改变代码签名身份那个目标!

1

简单,

删除旧的供应配置文件和

创建一个新的配置文件,使您在App ID推后。

这将工作肯定。

0

检查点下面您生成一个应用程序之前:

  1. 打开它使用的是建立在文本编辑应用你的临时配置文件。

  2. 确保临时配置文件由密钥组成:“aps-environment”。它可以有2个值,即基于配置文件环境的“开发”和“生产”。如果没有,那么你必须通过向其AppId添加APNS证书来制作新的临时配置文件。

如果上述事情发生,然后尝试构建应用程序。希望这可以帮助。