Push Notifications with OneSignal
Overview
Push notifications are one of the biggest advantages of mobile apps over mobile websites since they can send messages to users without the app being open.
When a user first opens an app with push notifications enabled they receive an alert prompting them to enable push notifications. Once they accept they are a subscriber of your app's push notifications.
Thunkable + OneSignal
Thunkable utilizes the services of OneSignal to facilitate push notifications from your app. OneSignal is a free service that supports unlimited devices and notifications. You can learn more about their features here: OneSignal pricing page.
To send push notifications to your app's users, you must link your Thunkable app to your OneSignal apps (iOS and/or Android). Once you've added your OneSignal App IDs into Thunkable, the work in Thunkable is done, and the remainder of the management takes place in third-party platforms (OneSignal, Apple Developer, and Firebase, depending on the platform).
Push Notification Best Practices
Notifications that are irrelevant and too frequent are often dismissed or blocked. We highly recommend sending notifications only when the content is relevant to the user. Examples include an e-commerce app letting the user know about a sale, or a game app letting the user know about a new level or feature.
Create a OneSignal Account
Go to OneSignal.
Click Sign Up.
Create your account and complete the OneSignal onboarding.
Create a OneSignal App
If you didn't create an app as part of the OneSignal onboarding, navigate to your OneSignal dashboard and click + New App/Website.
Enter your app name. We recommend including the platform in your app name, for example, Employee Directory - Android or Employee Directory - iOS.
Select Apple iOS (APNs) or Google Android (FCM).
Click Next: Configure Your Platform.
Follow the platform-specific configuration instructions below.
Android Configuration
iOS Configuration
Android Configuration
A Google Service Account is a special type of account from Google that applications use to make authorized calls to a variety of APIs, including Firebase Cloud Messaging APIs. For more details, see Google's own documentation on Service Accounts. In order to send push notifications to Android devices, you will need a Service Account to generate a private key for OneSignal to utilize.
If you don't already have one, create a Firebase account. Instructions for getting started with Firebase are available here: Firebase Account Setup.
Follow OneSignal's instructions to generate Firebase Cloud Messaging API Credentials for sending Android App Notifications here: Android: Firebase Credentials.
To continue sending messages in 2024, you need to provide updated authentication credentials from Firebase for all apps created in OneSignal before September 1, 2023:
In your Firebase project, go to Project settings and the Service accounts tab to download your private key JSON.
In your OneSignal App Settings, upload the private key file you just downloaded
More information on these steps is available here: Android: Firebase Credentials.
Select Native Android as your target SDK.
Click Save & Continue
Copy Your App ID.
Android Testing
To test Android push notifications, download the app to your Android device and send a test message through OneSignal to see the push notification in action.
iOS Configuration
Generate a p8 Certificate
Follow OneSignal's instructions to generate a p8 certificate: iOS: p8 Token-Based Connection to APNs.
When you get to the section titled "Provisioning Profiles," return to these instructions.
Add Push Notifications to the App Identifier
In your Apple Developer account, select Identifiers under the Certificates, IDs & Profiles heading.
Select your app from the list of Identifiers.
Scroll down the list of app capabilities, and place a checkmark next to Push Notifications.
Click Save.
Select your app from the list of Identifiers again.
Scroll down the list of app capabilities, until you get to Push Notifications again.
Click the associated Configure button.
Under Production SSL Certificate, click Create Certificate.
Under Upload a Certificate Signing Request, click Choose File.
Select the Certificate Signing Request (CSR) you downloaded from Thunkable as part of the publishing process.
Click Continue.
Click Download to download your iOS certificate.
Download your Provisioning Profile
Access your Apple Developer account’s Profiles.
Select your app from the list of Profiles.
Click Edit.
Click Save.
Click Download.
OneSignal
In OneSignal, select Native iOS as your target SDK.
Click Save & Continue.
Copy Your App ID.
Generate a Provisioning Profile
You require a new provisioning profile with push notifications enabled to publish to the App Store. See OneSignal's instructions here: Generate a Provisioning Profile.
iOS Testing
To test iOS push notifications, you have to publish to TestFlight. This requires the provisioning profile with push notifications enabled.
Last updated
Was this helpful?