Google Firebase Push Notifications for iOS are not working in production environment
Asked Answered
S

4

25

I'm using Google Firebase Cloud Messaging API (FCM) to send push notifications to my iOS app. I could get push-notifications working successfully when I test the app on a device with Development provisioning profiles + development push notification(sandbox) certificates.

However I'm unable to get it working on production environment. I made an ad-hoc build with correct production provisioning profiles and production push notification certificates. And synced an IPA file to a device via iTunes for testing (not directly from xcode). Still I can't receive push notifications from firebase console.

I have uploaded correct development and production certificates (with private keys) to firebase as well. I've double checked every possible step that could go wrong but, still can't find the issue. Is there a way to troubleshoot this issue? Or isn't it possible to get production environment notifications to an AdHoc build?

Serrell answered 19/8, 2016 at 8:24 Comment(11)
please explain why downvoted?Serrell
Did you send your device token to Firebase?Treharne
I mean did you call this method [[FIRInstanceID instanceID] setAPNSToken:deviceToken type:FIRInstanceIDAPNSTokenTypeProd];?Treharne
I have not set FirebaseAppDelegateProxyEnabled to NO to call that method. But I tried this method as well. It didn't work.Serrell
I have no idea why someone downvoted this. I am having a similar problem. However, in production, sometimes the push is delivered and other times the push doesn't reach the device :/Spicule
@TiagoAlmeida Have you tested production version with an ad-hoc IPA file? or were you able test what happens when the same IPA is downloaded from app store? I suspect production push notifications are not delivered to ad-hoc builds but it might work once it downloaded from App Store. I couldn't test this yet.Serrell
I did even better! I tested with an external build from testflight ;)Spicule
I'm going to submit a build to App Store and see how it goes. Hope production push notifications will work with an app store version. If not, I'm out of clues :/Serrell
Testflight is the closest you can get to a production environment. In my case ,it is not working in testflight (I receive a push from time to time but not every pushs are delivered). Other builds with dev are working :/Spicule
@TiagoAlmeida did you find a solution for this yet?Serrell
@sleepwalkerfx Dude any luck? I am in same situation. Push not working for Production builds. Also not using FirebaseAppDelegateProxyEnabled .. Have u got an solution?Dion
H
20

I had the same issue. Apparently there is an error in the Firebase documentation. When you exporting the APN certificate for production from your keychain to the .p12 file you have to select the actual certificate, not the private key.

Make sure you upload to the Firebase console this .p12 file in the Cloud Messaging APN certificate settings.

Hardship answered 17/1, 2017 at 11:38 Comment(4)
After countless hours of trying new app builds, this solved my problem! Thank you!Colitis
This should included in the documentation. Lost several hours on thisAntimasque
It's not giving me the option to create a signing request when I right click on the certificate. That option only appears if I select the private key. Am I missing something?Jemima
It's unbelievable that Google still hasn't corrected this. @Jemima you have to export the certificate after you have generated it and dowloaded it to your computerLoch
D
1

Had same issue. Finally got it working by:

  1. Using the correct Project and Target Build Settings as mentioned in This link.

  2. And revoking the existing push certificates and creating a new one completely, and then uploading the new certificate's .p12 file to the Firebase Console.

Dion answered 13/1, 2017 at 10:58 Comment(0)
S
0

What fixed my issue was using the new Authentication Keys method instead of the old p12 files. You can read more in the Firebase documentation, just follow their steps and you should be fine.

Squally answered 21/7, 2017 at 11:57 Comment(0)
L
0

I had the same issue.

What helped me: adding APNS for Distribution Certificate to Firebase. Simple as that ;)

Lactam answered 10/4, 2018 at 10:40 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.