I have configured a Firebase project for an iOS app. I have added seperate development and production APN certs in the Cloud Messaging settings. I'm able to successfully receive notifications I send from the Firebase Notifications console for a debug version of my app. However I'm unable to receive any notifications in the production version. I have disabled swizzling by setting the FirebaseAppDelegateProxyEnabled to NO in the info.plist. I also use the setAPNSToken to set the token type to prod in the didRegisterForRemoteNotificationsWithDeviceToken method. The app is signed using a production distribution profile and therefore uses the production APN environment. I can verify the production APN certificates etc. are valid as my app successfully receives notifications sent directly by the Apple APN gateway, gateway.push.apple.com:2195 using a Php script. I suspect that either;
Firebase is using the development APN certificate. However to eliminate this I uploaded the production APN certificate as both the dev and prod certs in Cloud Messaging settings. This did not resolve the issue.
Firebase is still swizzling and incorrectly identifying the app as a dev version and thereby setting the device token to sandbox. This is overriding my code to set the token type to prod. I have no way of verifying this to confirm.
Any assistance is much appreciated. Cheers