Native mobile integration
Mobile Widget SDKs
Add Returning.AI custom widgets to an existing mobile application while keeping authentication, navigation, events, and lifecycle control in native code.
Keep access credentials on your server
A mobile app requests a short-lived embed token from your trusted backend. Never ship a Returning.AI access ID or access key inside the app.
Choose your platform
Each package provides a native surface around the same secure custom widget contract. Choose the package that matches the host application.
Flutter
Flutter widget for Android and iOS
returningai_widgetFlutter 3.38+ and Dart 3.10+
Open the Flutter guideAndroid
Native View and Jetpack Compose
ai.returning:returningai-widgetAndroid API 24+ and JVM 17
Open the Android guideiOS
UIKit and SwiftUI
ReturningAIWidgetiOS 15+ and Swift Package Manager
Open the iOS guideReact Native
React Native CLI and Expo development builds
@returningai/react-native-widget-sdkReact Native 0.86+ and React 19.2+
Open the React Native guideHow the mobile integration works
- 1. Enroll the signed-in user. Match the identifiers configured for the target widget and environment.
- 2. Mint an embed token. Your backend uses its server credentials and returns only the short-lived token to the app.
- 3. Mount the supplied widget. Configure the widget ID, matching bundle URL, exact client origin, and token provider.
- 4. Own the host lifecycle. Handle renewal, navigation, logout, account replacement, and disposal from the host application.
Before you start
- Get the supplied widget ID and matching bundle URL. Use the widget catalog to understand experiences, not to invent an ID.
- Confirm the user exists in the target environment. See enroll traders.
- Ask your Returning.AI setup contact to allow the exact client origin for each widget.
- Keep the host backend responsible for user identity and embed-token minting.