What is deep linking?
Deep linking uses a URL to open your app and, ideally, a specific route (e.g. a product page or campaign). On iOS you use Universal Links (https); on Android you use App Links. Both require hosting a file on your domain (apple-app-site-association, assetlinks.json) so the OS can verify that your app is allowed to handle that domain.
For a full primer, see What is Deep Linking? on our blog.
HTTPS links that open your app when tapped. Require apple-app-site-association on your domain.
HTTPS links that open your app. Require assetlinks.json on your domain and intent filters in your app.
Universal Links and App Links
Both iOS and Android require you to prove that your app owns the domain used in the link. You do that by hosting a well-known file on that domain and declaring your app's bundle ID or package name. The OS then routes links for that domain to your app instead of the browser.
- iOS: Add Associated Domains (e.g. applinks:yourapp.redirectly.app) and host apple-app-site-association at /.well-known/apple-app-site-association.
- Android: Add an intent filter for your domain and host assetlinks.json at /.well-known/assetlinks.json.
- Redirectly hosts these files for your subdomain (e.g. yourapp.redirectly.app) so you don't have to manage them yourself.
Deferred deep linking
If the user doesn't have your app yet, a normal deep link can't open it. Deferred deep linking solves that: the link sends them to the store, and after install the app receives the original link data so you can route them to the right content. That's what Redirectly is built for.
Deferred deep linking and What is Deferred Deep Linking? go deeper.
Using Redirectly
Redirectly gives you a subdomain (e.g. yourapp.redirectly.app), hosts the required association files, and provides Flutter and React Native SDKs. You configure Universal Links and App Links once, then create links via API or dashboard. No native code needed for the SDK integration.