Firebase causes issue “Missing Push Notification E

2019-01-21 16:32发布

问题:

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

回答1:

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.



回答2:

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.



回答3:

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.