Skip to Content

Quickstart

Get your API key from your project settings at dash.1sygnal.app . Add it to your manifest:

<application> <meta-data android:name="app.onesygnal.API_KEY" android:value="YOUR_API_KEY" /> </application>

Then, from an Activity (or anywhere with a Context):

import app.onesygnal.sdk.api.OneSygnal OneSygnal.initialize(this) { success -> if (!success) return@initialize // key missing/blank, or init failed — see Troubleshooting OneSygnal.track("page_viewed") OneSygnal.identify("user_123") { identified -> // identified reflects whether identify() actually succeeded } }

That’s it — surveys matching your active trigger rules render automatically as a window overlay above your app’s content.

Pass the Activity, not applicationContext, if you call initialize() after the Activity has already resumed (e.g. from a button tap rather than Application.onCreate()) — a plain applicationContext silently breaks every survey trigger until the Activity happens to pause and resume again.

initialize()’s completion fires once config/user/surveys are fully fetched and settled — not immediately on call. If you’re already inside a coroutine, use the suspend variant instead:

val success = OneSygnal.initializeAwait(context)

See Configuration for setApiKey()/setLocale(), and API Reference for every method and its suspend counterpart.