Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Missing Push Notification Entitlement warning

We have created an App ID, distribution certificate and provisioning profile. Push Notifications were not initially enabled.

We now need to implement Push Notifications in the app.

We have enable Push Notifications in the App D, check the provisioning profile, the provisioning profile was invalid, updated it, and downloaded the latest provisioning profile to use it for next time.

We then integrate the APIs for Push Notifications via APNS in our code.

After uploading the app in iTunesConnect, we get the following email from Apple:

Dear developer,

We have discovered one or more issues with your recent delivery for "Swanvi". 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 include API used 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. See "Provisioning and Development" in the Local and Push Notification Programming Guide for more information. If your app does not use the Apple Push Notification service, no action is required. You may remove the API from future submissions to stop this warning. If you use a third-party framework, you may need to contact the developer for information on removing the API.

After you’ve corrected the issues, you can use Xcode or Application Loader to upload a new binary to iTunes Connect.

We have re-checked the App ID. Push Notifications are enabled for development and production.

In the Provisioning Profile, the Push Notifications option is shown.

Why are we getting this warning via email?

like image 275
Bis Avatar asked Jan 14 '15 14:01

Bis


People also ask

How do I enable push notifications entitlement?

To resolve this, make sure your App ID is enabled for push notification in the Provisioning Portal. Then, sign your app with a distribution provisioning profile that includes the aps-environment entitlement. This will create the correct signature, and you can resubmit your app.

Why do some people not receive push notifications?

Silent mode: Android devices have a “do not disturb” mode and a “no distractions” mode. If you have enabled either of these, you won't receive any notifications.

How do I fix Apple push notifications?

You can fix an iPhone that's not getting notifications by restarting it or making sure notifications are turned on. You should also make sure your iPhone is connected to the internet so apps can receive notifications. If all else fails, you should try resetting the iPhone — just make sure to back it up first.

What is a push notification alert?

Push notifications are small, pop-up messages sent to a user's device by a mobile app that appear even when the app isn't open. These notifications are designed to grab attention and can convey reminders, updates, promotions, and more. Push notifications can consist of a title, a message, an image, and a URL.


1 Answers

You need to see 2 things: The provisioning profiles used by your account on Xcode and the ones on developer.apple

Its all about the provisioning profiles.

STEP 1: Go to https://developer.apple.com/account/ios/certificate/ and see the Active iOS Distribution Provisioning Profiles you need for your app. Then click on it and make sure Enabled Services has Push Notification enabled. If it doesn't then click on edit and enable it by following the steps provided by Apple. If it is enabled then perfect.

distribution link

STEP 2: Delete any Invalid Provisioning Profiles you see related to app (just the invalid ones for YOUR app). I'll tell you why in the following steps.

STEP 3: Go to Xcode -> Preference -> View Details (for your Account) -> [OPTIONAL: To be sure invalid one is gone, rt-click on any provisioning profile, select "Show in Finder", then Delete/Move all the provisioning profiles from that folder.] Now click Download All Profiles. This will replace local provisioning profiles with current ones. Click DONE.

STEP 4: Go to your app Targets -> Build Settings -> In Code Signing, expand your Provisioning Profile to show Debug and Release tabs. By default it will be on Automatic (which is why your app was probably automatically using the invalid profile that we just deleted in step 2). For Release, to be on a safer side, select the Active Provisioning Profile with enabled Push Notifications as seen on step 1.

That's it.

You shouldn't get any emails now.

like image 79
Anish Kumar Avatar answered Sep 28 '22 05:09

Anish Kumar