Mobile SDK setup
How to set up your Mobile App with OneSignal for Android, iOS, Huawei, and cross-platform environments like React Native, Flutter, and Unity.
Overview
The following guides will help you set up the OneSignal SDK in your mobile apps. For websites, see Web Setup.
For each platform your mobile app supports, you’ll need to establish a connection with FCM (Android), APNS (iOS), HMS (Huawei), and/or ADM (Amazon). Use the options below to configure your OneSignal App and Platform.
Configure your OneSignal app and platform
Required setup for push notifications
To start sending push notifications with OneSignal, you must first configure your OneSignal app with all the platforms your support—Apple (APNs), Google (FCM), Huawei (HMS), and/or Amazon (ADM).
If your organization already has a OneSignal account, ask to be invited as an admin role to configure the app. Otherwise, sign up for a free account to get started.
Step-by-step instructions for configuring your OneSignal app.
Step-by-step instructions for configuring your OneSignal app.
You can manage multiple platforms (iOS, Android, Huawei, Amazon, Web) under a single OneSignal app.
Create or select your app
- To add platforms to an existing app, go to Settings > Push & In-App in the OneSignal dashboard.
- To start fresh, click New App/Website and follow the prompts.

Example shows creating a new app.
Set up and activate a platform
- Choose a clear and recognizable name for your app and organization.
- Select the platform(s) you want to configure (iOS, Android, etc.).
- Click Next: Configure Your Platform.

Example setting up your first OneSignal app, org, and channel.
Configure platform credentials
Follow the prompts based on your platforms:
- Android: Set up Firebase Credentials
- iOS: p8 Token (Recommended) or p12 Certificate
- Amazon: Generate API Key
- Huawei: Authorize OneSignal
Click Save & Continue after entering your credentials.
Choose target SDK
Select the SDK that matches your development platform (e.g., iOS, Android, React Native, Unity), then click Save & Continue.

Select which SDK you are using to be navigated to the docs.
Install SDK and save your App ID
Once your platform is configured, your OneSignal App ID will be displayed. Copy and save this ID—you’ll need it when installing and initializing the SDK.
If collaborating with others, use the Invite button to add developers or teammates, then click Done to complete setup.

Save your App ID and invite additional team members.
Once complete, follow the SDK installation guide for your selected platform to finish integrating OneSignal.
SDK setup guides

Google Android Native
Guide for integrating OneSignal into native Android apps using FCM.

iOS Native
Native iOS SDK setup using Apple’s APNS service.

Huawei Android Native
SDK setup for Huawei devices using HMS push services.

Unity
Cross-platform SDK guide for Unity-based mobile apps.

React Native & Expo
Setup instructions for React Native and Expo environments.

Cordova
Legacy SDK guide for Cordova apps using older frameworks.

Ionic & Ionic Capacitor
Setup for Ionic and Capacitor hybrid mobile apps.

Flutter
SDK guide for Flutter apps using Dart.
.NET MAUI
Guide for integrating with .NET MAUI apps.
Integrations
FAQ
Are the SDKs required?
No, but they’re highly recommended — and open source on GitHub.
You can integrate OneSignal using only our server-side APIs, but using our SDKs simplifies and streamlines the process, especially for handling push notifications across platforms.
What you can do without the SDK:
You can use the following APIs directly:
- Create user
- Create subscription
- Update user
- Update subscription
- Create message
- OSNotification payload
If you plan to use In-app messages, our SDK is required.
Why we recommend using the SDKs:
Push notifications have platform-specific requirements that our SDKs handle for you, including:
- Obtaining push tokens across Android, iOS, Huawei, and Web
- Managing subscription status and user prompts for opt-in
- Displaying and processing push notifications on the client
Apple’s APNS and Google’s FCM use different payload formats. OneSignal notifications include a custom payload that our SDK parses to display and track messages accurately.
Maintaining this manually adds complexity. Learn more: Build vs. Buy: What Goes Into Building a Push Notification Platform
Can devices in China receive push notifications?
If the device has Google Play Services/Store, it will receive push notifications through FCM (Firebase Cloud Messaging).
If the app was downloaded from the Huawei AppGallery, it will receive push notifications through HMS (Huawei Messaging Service). You will need to setup our Huawei SDK.
OneSignal defaults to FCM for devices that support both HMS and FCM. You can setup the Huawei SDK to prefer HMS over FCM.
Can non-HarmonyOS Huawei devices running Android receive push from OneSignal?
Yes, non-HarmonyOS Huawei devices running Android can still use our Huawei SDK.