Skip to main content

Quickstart

Install and configure Signal Session Replay for React Native across Android, iOS and Web.

Install

npm install signal-react-native-session-replay

Android

Ensure Maven Central is available. No extra Gradle dependency is required — installing signal-react-native-session-replay via npm will autolink and the module already depends on the underlying com.signal:signal-android SDK transitively. Minimum SDK for screenshots is API 26 (Android 8.0).

iOS

In your iOS Podfile, add:
pod 'SignalSDK'
pod 'signal-react-native-session-replay', :path => '../node_modules/signal-react-native-session-replay'
Then:
cd ios && pod install
Requires iOS 13+.

Web (React Native Web)

This package ships a web entry that uses the Signal JS SDK directly when bundling for web. No additional Metro/Webpack aliasing is needed.

Usage

Call start on app start (the SDK generates the session id internally), then control the session lifecycle:
import SignalReplay from 'signal-react-native-session-replay';

await SignalReplay.start(
  {
    apiKey: '<apiKey>',
    projectId: '<projectId>',
  } // other options use defaults
);

const active = await SignalReplay.isEnabled();
await SignalReplay.startSession();     // new session with a new id
await SignalReplay.continueSession();  // resume current session
await SignalReplay.endSession();       // stop current session

Troubleshooting

  • Android: API 26+ required for PixelCopy; rebuild after installation.
  • iOS: pod install; clean build if needed.
  • Web: ensure alias to the JS session helper resolves correctly.