Skip to main content
Install PNLight in the app so it can identify users, send attribution and optional in-app events, and request Remote UI configs.

Supported SDKs

Swift

Native iOS apps. Requires iOS 13.0+ and Swift 5.7+.

React Native

React Native iOS apps. Package: @pnlight/sdk-react-native.

Flutter

Flutter iOS apps. Package: pnlight_sdk.

Swift package

Open the Swift Package Manager repository.Swift SDK version

React Native package

Open the npm package page.React Native SDK version

Flutter package

Open the pub.dev package page.Flutter SDK version

What the SDK does

  • Initializes PNLight with the project SDK token.
  • Creates or returns a stable user ID.
  • Reports first installs and repeat app opens.
  • Sends optional in-app events.
  • Sends attribution data from providers such as AppsFlyer.
  • Requests and renders Remote UI.
The current public SDK packages are iOS-focused. If your app targets multiple platforms, gate PNLight calls so unsupported platforms do not execute iOS-only code.
1

Initialize the SDK

Call initialization once during app startup.
2

Confirm user identity

Read the SDK user ID and use it consistently with attribution and Remote UI flows.
3

Send attribution

Send attribution data after AppsFlyer or another provider returns conversion data.
4

Update IDFA after ATT

If the app asks for App Tracking Transparency permission after PNLight initialization, call updateIdfa() after the prompt completes.
5

Add Remote UI

Render a placement and handle custom actions from the returned UI.