Deferred deep linking requires
@masivo/rn version 2.2.0 or later.What is deferred deep linking?
When someone taps a Masivo link without your app installed, they’re sent to the App Store or Play Store. Deferred deep linking recovers that original destination the first time the app opens after install, so the user lands on the right screen instead of the app’s default entry point. This feature is implemented entirely through@masivo/rn — there is no REST endpoint to call directly. The SDK handles device identification and the request to Masivo internally; you only need to wire a few pieces on app startup.
1. Provide platform adapters
The SDK does not bundle native modules for reading the Android Install Referrer or the iOS clipboard — you provide them viasetAdapters:
Both adapters are optional. If you omit one, the SDK simply skips that matching method for that platform and falls back to IP-based fingerprint matching.
2. Configure persistent storage
resolveDeferred is designed to run once per install: it stores a flag so later app launches skip the request.
If you already call
setDeviceStorage(...) for secure, Keychain-backed
persistence of your device UUID, call it after setAsyncStorage(...).
setAsyncStorage wires in-app, device, and deep link storage together;
calling setDeviceStorage afterward re-points device storage to your secure
adapter, while deep links and in-app messaging keep using AsyncStorage.3. Resolve on app startup
Call this once you know the customer identifier, early in your app’s lifecycle:
The call resolves to
null when there is nothing to recover. Otherwise it resolves to:
Wrap the call in
try/catch — a network or server error throws instead of resolving, and the attempt is not marked as done, so it retries automatically on the next app launch.
How Android and iOS differ
- Android works automatically for any link that redirects to a Play Store listing — no configuration needed on the link itself.
- iOS requires the link to have Deferred deep linking via clipboard enabled in Advanced Settings. Without it, there’s nothing on the clipboard for the app to read, and only IP-based fingerprint matching applies.