我想配置我的应用程序支持推送通知,但不断收到此错误:无法获得令牌,错误:错误域= NSCocoaErrorDomain代码= 3000“没有有效的‘APS-环境’的权利字符串中找到了应用”的UserInfo = 0x1f818fc0 { NSLocalizedDescription =没有有效的“APS-环境”发现申请资格字符串}
- 我没有让我的应用程序支持推送通知(仅用于开发在这一点)。
- 我没有创建配置文件后启用推送通知。
- 我的包标识符是相同的出现在轮廓。
- 在我的配置文件有一个字符串:APS-环境
- 我确信,在“代码签名身份”部分下两项目和目标所有的值被选择为我的预备资料。
任何更多的想法? 谢谢。
就我而言,我的供应曲线的东西:
security cms -D -i ~/Downloads/spolskyDevelop.mobileprovision
...
<key>application-identifier</key>
<string>P5GM95Q9VV.com.dca.spolsky</string>
<key>aps-environment</key>
<string>development</string>
比在实际上建立的应用程序的不同的东西(你可以找出它是通过观察Xcode的日志选项卡中内置)
codesign -d --entitlements - '/Users/drew/Library/Developer/Xcode/DerivedData/spolsky-bdbtdfjeeywhqzccpmmceqvnhgtm/Build/Products/Debug-iphoneos/spolsky-ios.app'
<dict>
<key>application-identifier</key>
<string>Y2X6Z7Z2GR.com.dca.spolsky-ios</string>
<key>get-task-allow</key>
<true/>
<key>keychain-access-groups</key>
<array>
<string>Y2X6Z7Z2GR.com.dca.spolsky-ios</string>
</array>
</dict>
这是真实的,即使 “目前匹配”代码签名身份下提示文本被指示正确的配置资料-奇怪,是吧? 为了使一个奇怪的故事离奇,正确的供应曲线正在安装的设备上,当我跑,(设置>通用>情景模式),导致我相信供应配置文件是正确的 - 但它回落到一个通配符ID当应用程序实际上是启动 。
线索是在这两个命令的输出的区别:
Y2X6Z7Z2GR .com.dca。 斯波斯基-IOS VS P5GM95Q9VV .com.dca。 斯波斯基
当我做了加粗部分比赛中,斜体部分改为自动匹配。 此外,安全性和协同设计的输出是一致的,并没有更多的APS-授权错误。
在这里,我的猜测是,XCode的是用我的非通配符ID通配符风格的比赛。 (“斯波斯基”毕竟,相当接近“斯波斯基-IOS”),而这也解释了“目前匹配”输出。 可是,我在构建链将更加严格这一点,所以它的构建过程中回落到一个实际的通配符ID。
该问题是由于目前的供应配置文件不包含APNS信息,为供应配置文件之前创建APNS证书创建的。
因此,要解决这个问题,创建一个新的供应配置文件和选择在Xcode的供应配置文件会清除错误。
后推送通知已经在我的设备上工作,我有这个同样的问题。 好像Xcode中缓存的东西不正确,因此刷新它解决我的问题:
- Xcode中 - >首选项 - >帐户
- 开发者帐户查看详情
- 只需点击刷新为提供配置文件几次。 我看到这些变化与每个刷新。 不断刷新,直到他们停止改变。
我得到这个错误并没有创建一个新的供应配置文件; 创建一个新的,然后不得不重新启动的Xcode,但现在的作品!
请注意,该束标识符必须以区分大小写的方式供应轮廓相匹配。 我有这样的事情com.FirstLast.appname时,它应该是com.firstlast.appname。 好了,让我忙了好一阵子。
如果此问题升级到Xcode中8后突然发生的事情的能力筛选那些会允许你自动修复此你会发现一个警告:
选择Project>目标>功能>打开推送通知
我就遇到了这个在什么是可能的非频繁使用的情况。 我在Xcode 6和iOS 8.我创建了一系列全新的应用项目的合作,并尝试重新使用相同的包ID,以免需要重新办理所有门户端设置的。 这也只是为沙盒测试。
我会发现,虽然安装和注册将正常工作的第一个应用程序,如果我删除了与该设备的应用程序,将同捆ID为第二个应用程序,然后尝试使用该应用注册的期票,我会得到这个错误。
我的解决办法是:
- 从设备中取出相关联的配置的轮廓。
- 卸下Xcode的相关配置资料。
- 关闭的Xcode
- 双击我的下载
.mobileprovision
文件回到安装到Xcode中 - 打开项目和部署。
这种做法似乎罐子宽松任何先前的状态在那里,我能够与新的应用程序/同捆ID期票注册。
对于那些谁在IOS 10得到这个错误,你可以尝试以下步骤:
1.clean项目。
2.and检查目标 - >能力 - >推Notification.If它是关闭的,就可以了。
而且问题会solve.The上述步骤帮我摆脱掉这个问题。 希望这将有助于别人。
新的供应曲线为我工作。 请务必使用一个开发者的个人资料,如果你正在开发中(不要使用特设)。 这是后细,不知道为什么老一个停止工作的权利。