Firebase causes issue "Missing Push Notification Entitlement" after delivery to itunes connect - ios

As you may be aware, Google starts to use Firebase as analytics so I want to use it in my current project. I succesfully finished the implementation and upload project to iTunes Connect. But I got mail below. I do not want to use push notificaiton option of Firebase but its included in SDK. Do I need to remove it?how?
Will it cause to get rejection from review?
Dear developer,
We have discovered one or more issues with your recent delivery for "Instant Baby Dream". 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.
Regards,
The App Store team

If the library that you're using has any calls to the push notification API and you don't have a provisioning profile/certificate that enables your app to receive push notifications then you will receive this email from Apple. However if you do not need to use push notifications in your app then you can ignore this email.
This email doesn't mean that your app will be rejected. I used to get this email all of the time when submitting games made with Unity and using a certain Prime31 plugin for native functionality, it also made use of the push notification API which caused me to receive this email.
You can ignore it, it will be fine.

Solution:
Make sure your app does not utilize Firebase Cloud Messaging;
In your Xcode project, select the application target;
Go to Info tab (alternatively, select Info.plist in Project Navigator);
Add FirebaseAppDelegateProxyEnabled and set it to NO;
Go to Capabilities tab and turn ON Push Notifications capabilities;
Re-generate provision profiles.
Objective: While this issue does not mean that your app will be rejected, the email is sent to everyone who has access to the app record on App Store Connect. For corporate team accounts this usually means that management stuff gets this "We have discovered one or more issues" email. For them it usually means that development team does something wrong. Hence, I've been asked to get rid of it.

If you using Firebase, but don't using firebase push notifications, to avoid this warning you should disable app delegate swizzling. Just adding FirebaseAppDelegateProxyEnabled BOOL key with value NO to your Info.plist. And Your future release builds will be without any warnings about Push notifications.

Related

Itune connect rejects ios build with NSPhotoLibraryUsageDescription and warning with Missing Push Notification Entitlement

I have my app in both app store and play store. Recently I've released a new build and upload to iTunesConnect successfully. iTunesConnect did not show the build but instead sending me a warning to my email:
This app attempts to access privacy-sensitive data without a usage description.
The app's Info.plist must contain an NSPhotoLibraryUsageDescription key
with a string value explaining to the user how the app uses this data.
Though you are not required to fix the following issues,
we wanted to make you aware of them:
Missing Push Notification Entitlement - Your app includes an API for Apple's
Push Notification service, but the aps-environment entitlement is missing from the app's signature.
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.
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.
As I understand NSPhotoLibraryUsageDescription causes this rejection. My current build use facebook invite plugin to invite user's facebook friend to use the app.
What string value should I put for this key?
In case of Missing Push Notification Entitlement I already enable Push Notification in my apple developer page I also register dev/production keys to Firebase and able to receive push notifications to device normally. What I did new to push notification is to integrate a third party lib for local push. Can
this Local push libs cause the warning above?
will I have to try to remove one by one to really see which one that cause the rejection?
Your bundle reject because your App Store Distribution profile for does seems to have push notification entitlement.
Please make sure your apple ID has push notification enabled in production side as in image.

Missing Push Notification Entitlement Troubles in Ionic App using OneSignal

i'm using the OneSignal API for Push Notifications in an Cordova App. My android is receiving notifications, but the iPhone isn't and i'm receiving this e-mail:
Dear developer,
We have discovered one or more issues with your recent delivery for
"----". Your delivery was successful, but you may wish to
correct the following issues in your next delivery:
Missing Push Notification Entitlement - Your app includes an API for
Apple's Push Notification service, but the aps-environment entitlement
is missing from the app's signature. 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. 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.
Regards,
The App Store team
My App ID is enabled for push notifications and i really don't understand why it isn't working.
You need to enable "Push Notifications" in your project settings. Check attached the screenshot.

Can I use Scial.framework without Push Notifications?

In my app I use Social.framework to post on facebook. When I sent my app for review to Apple I got this reply.
We have discovered one or more issues with your recent delivery for
"****". 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.
Has anybody any idea of what I should do? I don't use push notifications, I just post to Facebook.
Social framework provides simple interface for accessing the user’s social media accounts. Like twitter , Facebook , Sina Weibo etc.
And to use the social framework you don't need Push notifications.
As you said you didn't use push notifications, then go to developer.apple.com and check that your APP ID must not enabled the Push Notifications and check your provisioning profiles.
And if you are using some kind of library or API which may be registered with Apple push notifications then make your you have make the proper settings for enabling the PUSH NOTIFICATIONS.

Missing Push Notification Entitlement Warning in email

After uploading the App to AppStore, I am getting the following warning in an email, where as there are no Push Notifications in my App but there are some third party SDKs like Chartboost, Applovin, Revmob, Crashlytics etc. Has someone else also encountered this problem? If so, have you reached to some solution?
Dear developer,
We have discovered one or more issues with your recent delivery for "Jigsaw 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 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.
Regards,
The App Store team
It means your provisioning profile does not support apns. create a provisioning profile with push notifications enabled and upload.
Check out for third party frameworks like
airpush
urbanship
etc...
These frameworks can register your app even though you don't register it in app delegate
Make sure push notification is disabled in these frameworks

How to delete push API from Intel XDK?

How to delete push API from Intel XDK? Im trying to submit iOS app to iTunes Connect, But Apple always send me Alert
Dear developer,
We have discovered one or more issues with your recent delivery for "***". 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.
Regards,
The App Store team
So, Im not using any API with push notification, it could be default Intel XDK Cordova API, how to fix this alert or how to delete API?
It should not be included by default, so you may want to look at the project page and make sure that "Notification" is not checked. This is under Plugins->"Featured and Custom plugins"->"Intel XDK Plugins", near the bottom, so you'll need to scroll down on the right to see it.

Resources