App rejected because of “Missing Push Notification Entitlement”
Problem :
Recently my application got rejected while uploading it. The Apple review team says my app is "Missing Push Notification Entitlements"
This is the information they have provided:
Missing Push Notification Entitlement - Your app registers with the Apple Push Notification Service, but the application signature's entitlements do not include the required "aps-environment" entitlement. Make sure you have enabled Push Notification Services for this app, and that you have downloaded a Distribution provisioning profile that includes the "aps-environment" entitlement.
Solutions :
If you are submitting a Cordova / Phonegap project and you are NOT using push notifications, you should inspect
Classes/AppDelegate.m
for the two methods below. Observed in Cordova 3.7.0, not sure about other versions.
Make sure you are not using remote notifications in any other way (carefully check your plugins as well). Then remove or comment out the following block:
- (void) application:(UIApplication*)application
didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken
{
// re-post ( broadcast )
NSString* token = [[[[deviceToken description]
stringByReplacingOccurrencesOfString:@"<" withString:@""]
stringByReplacingOccurrencesOfString:@">" withString:@""]
stringByReplacingOccurrencesOfString:@" " withString:@""];
[[NSNotificationCenter defaultCenter] postNotificationName:CDVRemoteNotification object:token];
}
- (void) application:(UIApplication*)application
didFailToRegisterForRemoteNotificationsWithError:(NSError*)error
{
// re-post ( broadcast )
[[NSNotificationCenter defaultCenter] postNotificationName:CDVRemoteNotificationError object:error];
}
Hope this saves you a few hours ;-)
Reference :
http://stackoverflow.com/questions/5719182/app-rejected-because-of-missing-push-notification-entitlement
0 comments:
Post a Comment