Superwall

Superwall

The shared instance of Superwall that provides access to all SDK features.

You must call configure() before accessing Superwall.instance, otherwise your app will crash.

Purpose

Provides access to the configured Superwall instance after calling configure().

Signature

companion object {
    val instance: Superwall
}
// Java
public static Superwall getInstance()

Parameters

This is a companion object property with no parameters.

Returns / State

Returns the shared Superwall instance that was configured via configure().

Usage

Configure first (typically in Application class):

class MyApplication : Application() {
    override fun onCreate() {
        super.onCreate()
        Superwall.configure(
            application = this,
            apiKey = "pk_your_api_key"
        )
    }
}

Then access throughout your app:

Superwall.instance.register("feature_access") {
    // Feature code here
}

Set user identity and attributes:

Superwall.instance.identify("user123")

Superwall.instance.setUserAttributes(mapOf(
    "plan" to "premium",
    "signUpDate" to System.currentTimeMillis()
))

Set delegate:

Superwall.instance.delegate = this

Java usage:

// Access the instance
Superwall.getInstance().register("feature_access", () -> {
    // Feature code here
});

// Set user identity
Superwall.getInstance().identify("user123");

How is this guide?

On this page