AppOne
buzztouch Evangelist
Profile
Posts: 348
Reg: Apr 03, 2012
London
13,980
01/29/13 01:03 PM (12 years ago)

Missing Push Notification Entitlement

Hi all, got the following notice from Apple a few mins after submitting binary. Note I have done nothing to enable push notifications. I am wondering whether there is something to do or whether I can leave it and this is just a standard courtesy ping from Apple just in case???: --- Dear developer, We have discovered one or more issues with the recent delivery of your app. Your delivery was successful, but you may wish to correct the following issues in your next delivery: Missing Push Notification Entitlement - Your app appears to register with the Apple Push Notification service, but the app signature's entitlements do not include the "aps-environment" entitlement. If your app uses the Apple Push Notification service, make sure your App ID is enabled for Push Notification in the Provisioning Portal, and resubmit after signing your app with a Distribution provisioning profile that includes the "aps-environment" entitlement. If you would like to update your binary for this app, you can reject this binary from the Binary Details page in iTunes Connect. Note that rejecting your binary will remove your app from the review queue and the review process will start over from the beginning when you resubmit your binary. Regards, The App Store team
 
Arubaman
Aspiring developer
Profile
Posts: 636
Reg: Oct 20, 2011
Akron
16,910
like
01/29/13 01:10 PM (12 years ago)
I'm assuming your using new code from BT that added push? Looks like it just detects it and their letting you know it will not work because you dont have certificates installed...I dont think its anything to worry about just their scanning software informing you.
 
David @ buzztouch
buzztouch Evangelist
Profile
Posts: 6866
Reg: Jan 01, 2010
Monterey, CA
78,840
like
01/29/13 02:58 PM (12 years ago)
Ah, this is good to know. Some background... IF your app intends to use Push Notifications ("Register to use Push Notifications") it fires methed called "register for push notifications" (shorthand). That method contacts apple for a device token. You're app may or may not make this call but the code exists in your app in the event that you want to. In other words, if you're users are not prompted to allow for push, this method will never be triggered. But, even if you don't use it, it's there. I'm thinking Apple has detected this in your binary and thinks you must be intending to register for push, else, why would your app include that code. The interested thing...I was under the impression that Apple did not literally inspect your raw source code - how could they - it's compiled right? Hmm.. Anyway, there saying: "hey, if you want to register for push, you should also include an "aps-environment" entitlement in app. You don't do this yourself, this is done by way of the Provisioning Profile you use when you compile your app for release. Because the Provisioning Profile is associated with an App Id (ios dev portal), it may or may not be "setup for push." Meaning, the Provisioning Profile may not be setup for push. Horribly confusing I know. Because they are saying "you may want to correct this in your next deliver" you may consider (before submitting next time)... 1) Creating a new Provisioning Profile. 2) Set the Provisioning Profile to "allow for push" in the iOS Dev Portal. Even if you don't plan to use it, why not just enable it anyway should you change your mind? 3) Compile with that Provisioning Profile.
 
Alex@TM
Apple Fan
Profile
Posts: 956
Reg: Dec 20, 2011
London, UK
10,560
like
01/29/13 03:31 PM (12 years ago)
Very interesting to me, this thread. I had the exact same issue when configuring push with Parse. Stupidly I had submitted the app with the developer Cert, not the production Cert. When I updated my binary with the newly created provisioning profile, added the production Cert and sent to Apple I got that email. I've learnt with xcode that if you have done something you are 99.9% sure is correct, try again! So I created another distribution profile under that App ID (with push enabled), uploaded the binary again and did not receive that email. So, fingers crossed push will work when the app is updated. I will keep you posted.
 
Outbreak
buzztouch Evangelist
Profile
Posts: 452
Reg: May 30, 2011
Colorado
14,620
like
01/29/13 03:56 PM (12 years ago)
Makes sense. At least it seems Apple was kind with the rejection. I had some problems with blackberry awhile back and got no input why an app was rejected.
 
AppOne
buzztouch Evangelist
Profile
Posts: 348
Reg: Apr 03, 2012
London
13,980
like
01/30/13 03:01 AM (12 years ago)
Thanks guys - Just to be on the safe side I deleted the BT push notification registration line from bt config and resubmitted - even though it might have passed anyway. If that doesn't work will create a new Provisioning Profile.
 
dlessa
I hate code!
Profile
Posts: 21
Reg: Jan 11, 2013
Montevideo
3,160
like
01/30/13 10:52 AM (12 years ago)
I have the same problem with Missing Push Notification Entitlement i received the email. What´s the line to be deleted in the btconfig? in Xcode?
 
AppOne
buzztouch Evangelist
Profile
Posts: 348
Reg: Apr 03, 2012
London
13,980
like
01/31/13 06:16 AM (12 years ago)
It didn't work! It was near the top of the BT config file
 
MikeP
Aspiring developer
Profile
Posts: 20
Reg: Jul 14, 2012
NYC
6,100
like
02/03/13 01:33 PM (12 years ago)
Well - I got the e-mail also. Tried to create a new provisioning profile and waded into the muck - looks like you have to create SSL Certificates for your app, install them in your keychain, then you can create a new profile with the app ID - or something like that :-) Go to the IOS Provisioning Portal, look for App IDs on the left side, note the status of your app, then click the "How To" tab to get the details. Thought I could sneak this in before the Superbowl - guess not!
 
MikeP
Aspiring developer
Profile
Posts: 20
Reg: Jul 14, 2012
NYC
6,100
like
02/03/13 04:19 PM (12 years ago)
Well - I got the e-mail also. Tried to create a new provisioning profile and waded into the muck - looks like you have to create SSL Certificates for your app, install them in your keychain, then you can create a new profile with the app ID - or something like that :-) Go to the IOS Provisioning Portal, look for App IDs on the left side, note the status of your app, then click the "How To" tab to get the details. Thought I could sneak this in before the Superbowl - guess not!
 

Login + Screen Name Required to Post

pointerLogin to participate so you can start earning points. Once you're logged in (and have a screen name entered in your profile), you can subscribe to topics, follow users, and start learning how to make apps like the pros.