Turn your website into a mobile app using GoNative.io and OneSignal

If you have a mobile-friendly website and want to turn it into a mobile app downloadable from the Apple or Google App Stores, then GoNative.io is a great solution and integrates with OneSignal.

Simply follow their Getting Started Guide and build an app at https://gonative.io/app.

Once setup, create an account at onesignal.com and create a New App/Website

You will need Google Android FCM keys and Apple iOS Push Certificates for Push. Follow these guides to create them:

Once these keys and certs are uploaded to OneSignal, copy the OneSignal App ID and head back into your gonative.io account to paste the OneSignal App ID.


Basic Integration Complete!

Run your app and you should be prompted to subscribe to push on iOS and already subscribed to push on Android.

OneSignal GoNative FAQ

How to access OneSignal Data Client Side?

Using GoNative's Native Javascript Bridge method gonative_onesignal_info you can capture the OneSignal Player ID (oneSignalUserId) and send it to your 3rd party database.

var osPlayerId = "the OneSignal Player ID string";
var isSubscribedToPushNotifications;

gonative.onesignal.onesignalInfo().then(function (oneSignalInfo) {
  osPlayerId = oneSignalInfo.oneSignalUserId;
  isSubscribedToPushNotifications = oneSignalInfo.oneSignalSubscribed;

More details in GoNative's Docs

Once you collect the OneSignal Player ID, you can send it to your DMP, CRM or Database. See Database, DMP, & CRM Integration for more details.

How do I send links in push to my mobile app?

GoNative has integrated the OneSignal SDK in a smart way where they leverage deep linking instead of the pop-up browser OneSignal provides by default.

When you send push to mobile app users, do not use the "Launch URL" field. Instead use the "Additional Data" field or data parameter from our REST API. The Key should be targetUrl (the "U" is capitalized) and the Value should be the url to the page you want to send users:


If you send to web and mobile at the same time, in the "Launch URL" area select "Different URL for web/app" and leave the "APP URL" blank.