Push Notifications require a Firebase Project. If you don't have one setup yet, click Add project and follow the directions to setup your project.
If you already have an FCM project, skip to Step 2.
Step 2 - Ensure Firebase Cloud Messaging API (V1) is Enabled:
If you've just created a new project, this should already be enabled by default and you can skip this step. However, if you are using an existing Firebase project, especially an older one, ensure Cloud Messaging API (V1) is enabled.
In your project, click the Gear icon next to "Project Overview" in the top left of the left-hand menu and select Project settings. Select the Cloud Messaging tab.
Settings > Platforms > Google Android (FCM) > Activate
Platforms screen within OneSignal app settings
Next to "Service Account JSON" select Choose file and upload the JSON file you downloaded from your Firebase project.
Click Save and Continue.
Select the SDK you are using for your app development and click Save & Continue.
SDK selection screen
Select Native Android
Click Native Android
Done!
You are now connected to FCM with this OneSignal App and can send push notifications to your Android app. 🥳 Configure Your OneSignal App's Android Platform Settings
Update in Admin Panel only
iOS Setup
Generate an iOS Push Certificate
Step-by-step guide to create an iOS Push Certificate
An iOS Push Certificate is required for notification delivery to all iOS apps.
Step 1 - Requirements:
An iOS mobile app. (This is not for websites / web push)
Next, go to Certificates and create a new certificate by clicking the blue + (plus) button.
Under Services, select Apple Push Notification service SSL (Sandbox & Production) and click Continue.
The certificate will be applicable to both Sandbox and Production environments, so you do not need a separate key for each one.
2.4 - Select your App
Choose your App ID with matching Bundle ID from the App ID pop-up menu, and click Continue.
2.5 - Upload your Certificate Signing Request
Click Choose File.., select the CertSigningRequest file you saved in Step 2.1, click Open, and then click Continue.
Click Download to save the certificate to your computer.
2.6 - Creating a Private Key
Open the .cer file you downloaded in the last step by double-clicking on it in Finder.
After a few seconds, the Keychain Access program should open. Select Login > My Certificates, then right-click on your Apple Push Services key in the list and select Export "Apple Push Services....
Give the file a unique name using the .p12 extension, and click Save. You will have an option to protect the file with a password. If you add a password, you need to enter this same password on OneSignal.
Step 3 - Upload Your Push Certificate to OneSignal
In the OneSignal dashboard, select your app from the All Apps page, then go to Settings. Under Native App Platforms, click Apple iOS.
Select the .p12 file you exported (along with a password, if you added one) and click Save.
Note: If you used the OneSignal Provisionator tool to create a .p12 file, a password was generated for you, and is located next to the Download button.
Optional - Provisioning Profiles
Usually Required for Cordova/Ionic, and GoNative.
Skip if selected "Automatically manage signing" in Xcode.
If you did not select "Automatically manage signing", then follow these steps.
Create your Identifier
In your Apple Developer Account, go to Identifiers and select the Blue + button
Select App IDs and Continue
Select App and Continue
Provide a "Description" and your Explicit "Bundle ID" then press Continue
Click Register
Create Your Profile
In your Apple Developer Account, on the left to go to Profiles.
Next find any that are for your app and remove them if they do not have App Groups and Push Notifications in Enabled Capabilities:
Create a Profile by pressing the "+" button
Select the type of profile you need to create and press Continue
Search for your App ID, if you do not see your App ID, check the Create Your Identifier step above.
Then press Continue.
Select the Development or Distribution Certificate to associate with the Profile. Then click Continue.