Rogoon Rogoon - 1 year ago 126
iOS Question

How to check if a 3rd party Library uses Push Notifications

When I upload my app for TestFlight I get the warning email about a missing push notification entitlement. I don't use push notifications in my app and I don't want to add the entitlement just to remove the warning without knowing what's causing it.

I assume it must be in a library I'm using. How would I check this? I've googled around and haven't found a good way to find out.

I've tried

grep "registerForRemoteNotificationTypes" -R .
grep "resgisterUserNotificationSettings" -R .
No results.

Answer Source

Did some digging on Apple's notification dev page and came up with the following grep:

grep "application:didRegisterForRemoteNotificationsWithDeviceToken:" -R Pods/

Got hits in Firebase Analytics and Firebase InstanceID binary files. So even though I'm not using Firebase messaging it looks like Firebase/Core and Firebase/Analytics use push notifications.

So to answer my own question:

Grep for "Notification" in your Pod folder and narrow down the search from there. But do be careful not to get mislead doing this. As stated here:

Note: Push notifications have no functional connection to broadcast notifications or key-value observing notifications.

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download