I\'ve been trying very very hard to create a simple simple iOS app which can recieve push notifications. My only reason for doing this is to establish a procedure for some
There seem to be something quirky with the 'automatic' entitlements in Xcode 4.6.
There is an Entitlement.plist file for each SDK at:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk/Entitlements.plist
A workaround solution I came up with was to edit this file and add the sneaky aps-environment key manually like so:
application-identifier
$(AppIdentifierPrefix)$(CFBundleIdentifier)
aps-environment
development
keychain-access-groups
$(AppIdentifierPrefix)$(CFBundleIdentifier)
Then, Xcode is generating correct Xcent file, which contains the aps-environment key at:
/Users/mySelf/Library/Developer/Xcode/DerivedData/myApp-buauvgusocvjyjcwdtpewdzycfmc/Build/Intermediates/myApp.build/Debug-iphoneos/myApp.build/myApp.xcent
You can locate where your Xcent file is created using Xcode's Log Navigator,
look for "ProcessProductPackaging".
Unfortunately, this is the only way I found that fixes the issue.
(and finally able to properly get push token now)
Just wondering if another more elegant solution is available.
Please see my SO question for more details on that:
Xcode 4.6 automatic entitlement not working - "no valid aps-environment"