The initial phase of the procedure involves preparing your apps for push notifications, with slightly different processes for Android and iOS.
IOS:
When dealing with iOS, your developers will be tasked with generating two iOS Apple Push Notification service SSL Certificates (one for sandbox and one for production). These certificates establish a secure link between Marketing Cloud, Apple, and your app. Remember to keep these certificates safe as they'll be required for the subsequent step.
Marketing Cloud ------------->Apple--------------->Your APP
let's simplify the steps to create a .p8 Auth Key File for Apple's Push Notification service:
Go to Apple's Developer Website: Visit the Certificates, Identifiers & Profiles section on Apple's developer website.
Create a New Key: Navigate to the Keys section and click the Add button.
Provide Key Information: Give your key a unique name in the Key Description field.
Select Notification Service: Check the box next to Apple Push Notification service.
Continue and Confirm: Follow the prompts to continue and confirm the key configuration.
Download the Key: Once confirmed, download the key file (it will have a .p8 extension).
Save Securely: Remember to save the downloaded .p8 file in a secure location. This file is crucial for MobilePush to communicate with Apple's notification service.
Important Note: Keep in mind that this key file is not saved in your developer account, so make sure to save it securely as you won't be able to download it again later.
Following Apple’s instructions, create two iOS Push Notification certificates:
Development / Xcode
Create an iOS Apple Push Notification service SSL (Sandbox) certificate. This type of certificate is used to send pushes through Apple’s “sandbox” push environment, which allows you to receive pushes in your debugging configuration. The .p12 file resulting from this step will be used in creating and configuring your Marketing Cloud MobilePush app.
Note: You must select “iOS Apple Push Notification service SSL (Sandbox)” certificate type.
Production / Distribution
Create an Apple Push Notification service SSL (Sandbox & Production) certificate. This type of certificate is used to send pushes through Apple’s production push environment, which allows you to receive pushes in your production configuration. The .p12 file resulting from this step will be used in creating and configuring your Marketing Cloud MobilePush app.
Note: You must select the “Apple Push Notification service SSL (Sandbox & Production)” certificate type.
Save and Maintain
These push certificates are credentials containing information which uniquely secures and establishes trust from your application, through Marketing Cloud and Apple’s push system, and to your customer’s devices.
It is recommended that you save the .p12 files using unique and descriptive names and that access to these files is carefully controlled.
The .p12 files should be protected with a secure password.
Android:
As for Android, collaborate with your developers to obtain the Legacy Server Key and Sender ID from Google Firebase. These details, too, will be necessary for the next stage, so it's advisable to document them.
Provisioning ensures that users receive push messages from your app. The first step in provisioning is to retrieve the Legacy server key and Sender ID for your app so that you can put this information into Marketing Cloud.
Log in to Firebase.
Select your project.
Navigate to Cloud Messaging under Project Settings.
Make note of the Sender ID and server key under Cloud Messaging API (Legacy) section. Follow Google intructions on generating a Server Key(if not exists already).
Use the Legacy server key your app in Marketing Cloud.
Provide the Sender ID to the SDK during initialization via the setSenderId method.
Create a new project for your app in Firebase
Navigate to Cloud Messaging under Project Settings.
Follow Google intructions on generating a Server Key. Make note of the Sender ID and server key under Cloud Messaging API (Legacy) section.
Use the Legacy server key your app in Marketing Cloud.
Provide the Sender ID to the SDK during initialization via the setSenderId method.