29 Replies
      Latest reply on Oct 8, 2015 12:12 PM by jogu
      iCat Level 1 Level 1 (0 points)

        Hi there.

         

        I was trying to submit one of my apps today with xcode7 (iOS9) for internal testing and I got this email from Apple:

         

        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.

         

        Not quite sure what to do with it. I use local notifications and nothing else. Do I still need to register with Apple's Push Notification Service (App ID enabled for Push Notification in the Provisioning Ports)???

         

        I've deleted all references in AppDelegate.m to pushNotifications and do not use any other third-party framework but still get the same warning....

         

        Anyone form Apple here that can shed some light on it???

         

        Thanks

         

        Frameworks used: CoreSpotlight, MobileCoreServices, AudioTool, Social, CoreData, SystemConfiguration, MessageUI, QuartzCore, Foundation, CoreGraphics, UIKit.

        • This reply has been hidden. This can happen if the message has been hidden by a moderator, or has been reported as abusive.
          • This reply has been hidden. This can happen if the message has been hidden by a moderator, or has been reported as abusive.
          • Re: How to remove push notification API
            gabriel123 Level 1 Level 1 (0 points)

            Hi,

             

            I get the same message whenever I upload a new beta. Since yesterday.

            The project neither uses local nor push notifications. Nor does the App-Delegate implement a delegate method related with local or remote notifications.

             

            Slightly annoying, as I fear that the App might be rejected due to the same "analysis" when being send to review.

            • Re: How to remove push notification API
              bhautik Level 1 Level 1 (0 points)

              I have same problem i have to remove api for push notfication.

                • Re: How to remove push notification API
                  jogua Level 1 Level 1 (0 points)

                  I got a response to say that Apple thought they'd fixed this issue, but our subsequent submissions are still showing the warning every time.

                   

                  I submitted more info to Apple under DSI 627546201 but haven't got a further response yet.

                   

                  The good news is that despite these warnings, we've not had any rejections from the app review team - so the warning can be safely ignored.

              • Re: How to remove push notification API
                gc. Apple Staff Apple Staff (255 points)

                That notice is a warning only, not a rejection.

                 

                The app validator checks for an implementation of the UIApplicationDelegate method application:didRegisterForRemoteNotificationsWithDeviceToken: in the app. You’ll get the warning you described if your app delegate implements that method and there is no aps-environment entitlement.

                 

                It's possible that a third-party library you're using has implemented that method even though your app doesn't do anything with push notifications. In that case you can just ignore the warning. It's there to let developers who do use push notifications know if they might have signed their app incorrectly.

                 

                It doesn't sound like either of these cases apply to you though, so I suggest filing a DTS incident so we can investigate further.

                 

                --gc

                • Re: How to remove push notification API
                  jprozeniuk Level 1 Level 1 (0 points)

                  I have also received this warning for a beta submitted today, for an app that does not use push notifications.

                   

                  A beta submitted just two days ago for the same app did not receive this warning.  The differences between the two submssions were not significant -- no new features, no new frameworks included... just some bug fixes.

                   

                  Similarly to iCat, the included frameworks are:

                  MessageUI, ImageIO, QuartzCore, CoreGraphics, Foundation, UIKit, WebKit, SystemConfiguration

                   

                  We're counting on gc's response that this is just a warning, and this won't cause rejection when the app is submitted to the store for approval.  However, I would like to know why it is happening.

                  • Re: How to remove push notification API
                    mwasko1011 Level 1 Level 1 (0 points)

                    I also just resubmitted an app update: very minor changes to variables and such. Got the same warning that you guys are getting.

                     

                    Just letting you guys know. It doesn't seem to be an issue, but it's kind of irritating because these warnings clearly just started showing up a few days ago, but they clearly don't apply to some developers. Hopefully Apple fixes that so more people don't get worried after receiving a warning that does not apply to them.

                    • Re: How to remove push notification API
                      trudnai Level 1 Level 1 (0 points)

                      Same here!

                       

                      Something is not quite right with the veryfication process I suspect.

                      • Re: How to remove push notification API
                        zupahfly Level 1 Level 1 (0 points)

                        We too get the warning in the email even though our app does not use, and never has used, push notifications. The weird thing is that it started happening when I replaced the XCode wildcard provisioning profile for an app id specific App Store Distribution profile. But reading all your replies makes me think that was just a coincidence. I searched our Cocos2D project for implementations of application:didRegisterForRemoteNotificationsWithDeviceToken:, nothing was found.

                         

                        I will ignore this (strange) email warning for now and assume Apple will fix it in the future.

                        • Re: How to remove push notification API
                          Sunil84 Level 1 Level 1 (0 points)

                          Same here. This is rather irritating, as the notification is sent to all of our testers, many of which are not involved in changing the code.

                            • Re: How to remove push notification API
                              Chuck G. Norris Level 1 Level 1 (0 points)

                              Tried everything to remove this warning. But it didn't work. Couldn't find any obvious flag, line of code, flag in appid, flag in Profiles, or flag in macros that would proove that the from Apple mentioned Push Notification would be enabled. Guess something with the way Apple checks submitted API for Push Notification is wrong - maybe a bug in Apple's 'scan engine / mechanism' ?

                            • Re: How to remove push notification API
                              Stoneage Level 2 Level 2 (45 points)

                              Two apps that generated the warning email have been approved without any problems.

                              • Re: How to remove push notification API
                                morkall Level 1 Level 1 (0 points)

                                I investigated this issue in MachO View to confirm it's a false-positive.

                                 

                                I could see that in AppDelegate.o - while there are no references to application:didRegisterForRemoteNotificationsWithDeviceToken: in the symbol table..

                                $ nm ./AppDelegate.o | grep application:didRegisterForRemoteNotificationsWithDeviceToken
                                $
                                
                                
                                

                                 

                                I did find the grep output matching, as confirmed in other commenters' reports.

                                $ grep application:didRegisterForRemoteNotificationsWithDeviceToken ./AppDelegate.o
                                Binary file ./AppDelegate.o matches
                                
                                
                                

                                 

                                I loaded the binary into MachO View (see screenshot below) and found application:didRegisterForRemoteNotificationsWithDeviceToken:, application:didFailToRegisterForRemoteNotificationWithError: and ALL OF THE OTHER UIApplicationDelegate methods - in the __TEXT segment, __objc_methname section - the list of c string literals that store objc selector names

                                 

                                MachO View Screenshot of __TEXT,__objc_methname section with list of UIApplicationDelegate methods:

                                http://imgur.com/JXgCjjm

                                 

                                I confirmed this finding with otool here:

                                $ otool -v -s __TEXT __objc_methname ./AppDelegate.o  | grep didRegisterForRemoteNotificationsWithDeviceToken
                                000000000000bfbb  application:didRegisterForRemoteNotificationsWithDeviceToken:

                                 

                                iTunes's review process is strings-based, not nm-based, so their simple grep for didRegisterForRemoteNotificationsWithDeviceToken will always register a false positive.

                                • Re: How to remove push notification API
                                  pushparajakln Level 1 Level 1 (0 points)

                                  Please help me out of this issue. I am also facing the same issue in beta release.