Documentation

Installation

Beta
The mobile SDKs are currently in beta. If you encounter any issues, please contact us.

Requirements

  • Android API 26+ (Android 8.0 Oreo)
  • Kotlin 1.9+
  • Gradle 8.2+
  • JDK 17+

Installation

Add the dependency to your app's build.gradle:

dependencies {
    implementation("io.upscope:upscope-sdk:2026.3.6")
}

Initialization

Initialize the SDK in your Application class:

import io.upscope.sdk.Upscope
import io.upscope.sdk.UpscopeConfiguration

class MyApplication : Application() {
    override fun onCreate() {
        super.onCreate()

        val config = UpscopeConfiguration.Builder("YOUR_API_KEY")
            .build()

        Upscope.initialize(this, config)
    }
}

The SDK auto-connects by default. To disable this, call .autoConnect(false) on the builder and call Upscope.connect() manually when ready.

The SDK automatically binds to the current activity via lifecycle callbacks. No manual activity binding is needed.

Jetpack Compose Example

import io.upscope.sdk.Upscope
import io.upscope.sdk.UpscopeConfiguration

class MyApplication : Application() {
    override fun onCreate() {
        super.onCreate()

        val config = UpscopeConfiguration.Builder("YOUR_API_KEY")
            .build()

        Upscope.initialize(this, config)
    }
}

class MainActivity : ComponentActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContent {
            MyApp()
        }
    }
}

Public API Key

You can find your public API key in the installation page of your UserView dashboard.

Required Permissions

The SDK only requires these standard permissions (automatically included):

  • INTERNET
  • ACCESS_NETWORK_STATE

No special permissions are required for screen capture because the SDK captures only your app's content, not system-wide screens.

Lookup Code on Shake

By default, shaking the device will display the lookup code in a dialog. This can be disabled via configuration options.