#iOS开发笔记#未找到应用程序的“aps-environment”的授权字符串/“no valid aps-environment entitlement found for application

在申请获取token的时候出现错误信息:

未找到应用程序的“aps-environment”的授权字符串
“no valid aps-environment entitlement found for application”


出现这个错误的原因是当前所用的provisioning profile对应的App ID没有Push Notification的权限,但是往往申请了App ID之后问题依旧不能解决,原因是XCode端的Provisioning Profile并没有更新。解决办法分两步:申请App ID和XCode端更新


1. 申请App ID

(已申请了有Push Notification的App ID的可以跳过)

针对当前应用申请一个新的App ID,必须是specific的,不能是wildcard。

具体步骤参见:http://www.raywenderlich.com/32960/apple-push-notification-services-in-ios-6-tutorial-part-1

2. XCode端更新

申请之后你就会已经拥有了针对当前应用的有Push Notification权限的Provisioning profile,但是XCode并没有更新,所以需要手动更新。

步骤如下;

  • Preferences -> Accounts
  • 选择当前开发账户,点击 View Details
  • 在Provisioning Profile窗口左下角,点击刷新按钮
  • 稍等片刻,就会显示上一步申请的App ID
  • 在当前project的build setting中,搜索Provisioning Profile,选择Automatic或者上一步申请的specific profile(推荐)

参考资料:
1. http://www.raywenderlich.com/32960/apple-push-notification-services-in-ios-6-tutorial-part-1
2. http://stackoverflow.com/questions/2452086/no-valid-aps-environment-entitlement-found-for-application

你可能感兴趣的:(Bug,Fix,iOS)