How to use Apple's new .p8 certificate for APNs in firebase console

IosFirebaseApple Push-NotificationsP12P8

Ios Problem Overview


With the recent up gradation of the Apple developer accounts, I am facing a difficulty that while trying to create the push notification certificates, it is providing me with (.p8) certificate instead of APNs ones which can be exported to (.p12).

Firebase console only accepts (.p12) certificates so how I can get that out from these new (.p8) certificates.

Ios Solutions


Solution 1 - Ios

I was able to do this by selecting "All" located under the "Keys" header from the left column

enter image description here

Then I clicked the plus button in the top right corner to add a new key

enter image description here

Enter a name for your key and check "APNs"

enter image description here

Then scroll down and select Continue. You will then be brought to a screen presenting you with the option to download your .p8 now or later. In my case, I was presented with a warning that it could only be downloaded once so keep the file safe.

Solution 2 - Ios

Apple have recently made new changes in APNs and now apple insist us to use "Token Based Authentication" instead of the traditional ways which we are using for push notification.

So does not need to worry about their expiration and this p8 certificates are for both development and production so again no need to generate 2 separate certificate for each mode.

To generate p8 just go to your developer account and select this option "Apple Push Notification Authentication Key (Sandbox & Production)"

enter image description here

Then will generate directly p8 file.

I hope this will solve your issue.

Read this new APNs changes from apple: https://developer.apple.com/videos/play/wwdc2016/724/

Also you can read this: https://developer.apple.com/library/prerelease/content/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/APNsProviderAPI.html

Solution 3 - Ios

So, After taking a while I figured out that the old push certificate generating service also exists.

You get two options:

  • Apple Push Notification Authentication Key (Sandbox & Production)
  • Apple Push Notification service SSL (Sandbox & Production)

Those who want to achieve the old style .p12 certificate can get it from second option. I have not used the first option yet as most of the third-party push notification service providers still need the .p12 format certificate.

Sample image of the push notification service

Solution 4 - Ios

Firebase console is now accepting .p8 file, in fact, it's recommending to upload .p8 file.

You can see in below-attached screenshot

Solution 5 - Ios

May 2021 - Generating .p8 file instead of .cer file

The issue that I had was I couldn't find the way to create the .p8 file and all methods gave me .cer file instead.

  1. Head to your Apple developer account
  2. Go to the keys section and click on the plus button (or click here): > ⚠️ It is very important to select the keys section and NOT the certificate or identifiers. otherwise you will get the .cer file at last 路‍♂️

Keys section

  1. Select the Apple push notification service: Options > ⚠️ Note that since it is very powerful certificate, it is very limited and you can not have much of these. So if you already created one, you will face something like this image and you should use that file or just revoke the old one.

  2. Download the.p8 file and secure it somewhere.

Solution 6 - Ios

Follow these steps:

1. Generate an APNs Auth Key
Open the APNs Auth Key page in your Developer Center and click the + button to create a new APNs Auth Key.

enter image description here

In the next page, select Apple Push Notification Authentication Key (Sandbox & Production) and click Continue at the bottom of the page.

enter image description here

Apple will then generate a .p8 key file containing your APNs Auth Key.

enter image description here

Download the .p8 key file to your computer and save it for later. Also, be sure to write down the Key ID somewhere, as you'll need it later when connecting to APNs.

2. Send Push Notifications

Ref: APNS (Configure push notifications)

> Important: Save a back up of your key in a secure place. It will not be presented again and cannot be retrieved later.

Solution 7 - Ios

You can create the .p8 file for it in https://developer.apple.com/account/

Then go to Certificates, Identifiers & Profiles > Keys > add

apple_key

Select Apple Push Notification service (APNs), put a Key Name (whatever).

Then click on "continue", after "register" and you get it and you can download it.

Solution 8 - Ios

When you upload your p8 file in Firebase, in the box that reads App ID Prefix(required) , you should enter your team ID. You can get it from https://developer.apple.com/account/#/membership and copy/paste the Team ID as shown below.

enter image description here

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionSubsoView Question on Stackoverflow
Solution 1 - IosJohn IdasetimaView Answer on Stackoverflow
Solution 2 - IosHardik ShahView Answer on Stackoverflow
Solution 3 - IosSubsoView Answer on Stackoverflow
Solution 4 - Iosdharmendra vaishnavView Answer on Stackoverflow
Solution 5 - IosMojtaba HosseiniView Answer on Stackoverflow
Solution 6 - IosKrunalView Answer on Stackoverflow
Solution 7 - IosDodyView Answer on Stackoverflow
Solution 8 - IosbibscyView Answer on Stackoverflow