Skip to main content

Deferred Deep Linking

Deferred deep linking happens when a user clicks a Apptrove URL but doesn't have your app installed. The URL redirects to the app store, and when the user installs and opens the app, the SDK retrieves the deep link data.

note

For iOS Only: Call AppTroveSDK.SubscribeAttributionLink() after initialization to enable deferred deep links. For Android, it works automatically.

Implementation

var config = new AppTroveSDKConfig("your-sdk-key", AppTroveEnvironment.Production);

// Set deferred deep link callback (add before Initialize)
config.DeferredDeeplinkCallback = (url) =>
{
Console.WriteLine($"Deferred deep link: {url}");
};

AppTroveSDK.Initialize(config);

// Subscribe to attribution link (iOS only - add after Initialize)
#if IOS
AppTroveSDK.SubscribeAttributionLink();
#endif
note
  • Set DeferredDeeplinkCallback before Initialize()
  • Call SubscribeAttributionLink() after Initialize() (iOS only)

Testing

Important

Deferred deep link data is received only once - on the first app launch after installation. Subsequent app launches will not trigger the callback.

Android Testing

  1. Prepare APK: Build APK with SDK integration
  2. Click Link: Open test URL in browser - redirects to Play Store
  3. Install APK: Install APK manually (not from Play Store)
  4. Launch App: Open app - deferred deep link should be processed

Tips for Re-testing on Android

  • Use Different Device: Test on a different physical device or emulator
  • Reset Google Advertising ID (GAID):
    1. Go to Settings > Google > Ads
    2. Tap Reset advertising ID
  • Clear Play Store Cache:
    1. Go to Settings > Apps > Google Play Store
    2. Tap Clear Cache and Clear Data
  • Uninstall App Completely: Ensure app is fully uninstalled before re-testing

iOS Testing

  1. Prepare IPA: Build IPA with SDK integration
  2. Click Link: Open test URL in Safari - redirects to App Store
  3. Install App: Install via TestFlight or direct installation
  4. Launch App: Open app - deferred deep link should be processed

Tips for Re-testing on iOS

  • Use Different Device: Test on a different physical device or simulator
  • Reset Advertising Identifier (IDFA):
    1. Go to Settings > Privacy & Security > Tracking
    2. Toggle tracking off and on
  • Uninstall App Completely: Delete the app fully before re-testing
Probabilistic Matching

Deferred deep linking uses probabilistic matching based on device fingerprinting (IP address, device model, OS version). Results may vary based on network conditions.

Example Test URL:

https://yourdomain.u9ilnk.me/d/Af2xeLPI77?pid=Media+Source&dlv=ProductPage&p1=value1

Common Issues

IssueSolution
No app store redirectCheck Store Redirect in Apptrove Panel
Deep link not processedSet DeferredDeeplinkCallback before Initialize()
iOS not workingCall SubscribeAttributionLink() after Initialize()
Deep link received only onceExpected behavior - attribution happens only at install
Different results on re-testReset GAID/IDFA or use different device

For support, contact support@trackier.com.