Deep links
Short links that survive the app store — click tracking, deferred deep linking, install / open / uninstall attribution.
Create a link in the console (Links) with a destination per platform and a
deep-link value (the in-app route, e.g. /products/42). Share its short URL.
Nexus records the click, sends the person to the store or straight into your app,
and — after an install — hands the app the route it was meant to open.
Flutter: automatic
With linksEnabled (default true) the SDK reports the install once per
install (using the Google Play install referrer on Android for an exact match),
reports every open that came from a Nexus link, and routes the link's
deep-link value when your router could not have seen it — after an install, or
when the app was opened by the short link itself.
await Nexus.init(NexusConfig(
apiKey: 'nxs_live_xxx',
linkDomains: ['go.example.com'], // a branded short-link host, if you use one
onDeepLink: (link) async {
if (!signedIn) return true; // take over: hold it until after login
return false; // let the SDK route it
},
));
Nexus.instance.links.onLink.listen((link) {
link.source; // NexusDeepLinkSource.install / .open
link.path; // the deep-link value (or the URL's path)
link.params; // deep-link parameters
link.campaign; link.matchType; // 'deterministic' | 'probabilistic' | 'organic'
});
// After sign-in, pick up a link you held back:
final pending = Nexus.instance.links.consumePending();Turn routing off with autoRouteDeepLinks: false and route from onLink yourself.
App Links & Universal Links
Register each app in the Apps card on the Links page — Android: application id + SHA-256
certificate fingerprints; iOS: bundle id + Team ID. Nexus then serves
/.well-known/assetlinks.json and /.well-known/apple-app-site-association for
you, claiming only /a/<your app id>/* on the shared link host. Add the
associated domain (applinks:services.inverge.net, or your branded domain) to
your iOS entitlements.
Uninstalls
Enable uninstall tracking for an app and Nexus detects uninstalls from push feedback and periodic silent probes, attributing each to the install's original link and campaign.
Other SDKs: report conversions
await nexus.links.attribute({ type: 'install', clickId: 'abc', name: 'summer_sale' });
const data = await nexus.links.handleCurrentUrl(); // browser: reads ?link_click_idConversion types: install, open, reengagement, uninstall, in_app. Pass
clickId whenever you have it — without it, attribution falls back to a
probabilistic match, and with no match the conversion is organic.
