Skip to content
SDK

Platform SDKs

Find SDK installation guides for iOS, Android, React Native, and Flutter.

Platform SDKs

Setgreet provides native SDKs for the four major mobile platforms. Each SDK is published on GitHub with full installation and integration documentation.

Supported platforms

PlatformLanguageMinimum versionInstallationRepository
iOSSwiftiOS 15.0+Swift Package Manager, CocoaPodssetgreet-ios-sdk
AndroidKotlinAndroid 6.0+ (API 23)Maven Central (Gradle)setgreet-android-sdk
React NativeTypeScriptReact Native 0.60+npm / yarnsetgreet-react-native-sdk
FlutterDartFlutter 3.0+pub.devsetgreet-flutter-sdk

Quick installation

Replace LATEST_VERSION in the snippets below with the current release. Each SDK publishes its version on its releases page: iOS, Android. For npm and pub.dev, the install commands already resolve to the latest published version.

iOS (Swift Package Manager)

In Xcode, add a Swift package with the URL:

https://github.com/setgreet/setgreet-ios-sdk.git

Or add it to your Package.swift:

dependencies: [
    .package(url: "https://github.com/setgreet/setgreet-ios-sdk.git", .upToNextMajor(from: "LATEST_VERSION"))
]

Android (Gradle)

Add the dependency to your app-level build.gradle.kts:

dependencies {
    implementation("com.setgreet:setgreet:LATEST_VERSION")
}

React Native (npm)

npm install @setgreet/react-native-sdk

Or with yarn:

yarn add @setgreet/react-native-sdk

Flutter (pub.dev)

Add to your pubspec.yaml:

dependencies:
  setgreet: ^LATEST_VERSION

Then run:

flutter pub get

Initialization

After installing the SDK, initialize it on app launch with your App Key (found in the dashboard in your app's settings):

// iOS - in AppDelegate or App init
Setgreet.shared.initialize(appKey: "your_app_key", config: SetgreetConfig())
// Android - in Application.onCreate()
Setgreet.initialize(context, "your_app_key", SetgreetConfig())
// React Native - in App.tsx or index.js
import { initialize } from '@setgreet/react-native-sdk';

initialize('your_app_key');
// Flutter - in main.dart
import 'package:setgreet/setgreet.dart';

await Setgreet.initialize(appKey: 'your_app_key');

Each GitHub repository contains a complete integration guide with detailed setup instructions, example projects, and troubleshooting tips. Start there for platform-specific guidance.

What each SDK includes

All platform SDKs share the same core capabilities:

  • Flow rendering -- fully native UI components with flexbox layout.
  • User identification -- identifyUser with user attributes, and resetUser.
  • Event tracking -- custom events (trackEvent) and screen views (trackScreen).
  • Trigger evaluation -- conditions are evaluated server side, so targeting rules take effect without an app release.
  • Analytics collection -- automatic tracking of views, completions, and interactions.
  • Queued analytics -- events are persisted and retried when the network is unavailable. Flows themselves are not cached offline and need a live request to display.
  • Flow callbacks -- lifecycle events for integrating with your app logic.

Next steps

On this page