- HTTP/HTTPS Deep Links: URLs with
http://orhttps://protocols that can open your app when clicked. Requires domain verification. - Custom URI Schemes: URLs with a custom protocol like
myapp://that are registered to your app. No verification needed.
HTTP/HTTPS Deep Linking
HTTP/HTTPS deep links (including App Links on Android and Universal Links on iOS) require you to prove domain ownership before they work reliably. The setup has four parts:- Create your verification config files
- Save them in Linkrunner
- Update native configuration (Android & iOS)
- Configure your app’s navigation
Step 1: Create Verification Config Files
- Android
- iOS
Create the Digital Asset Links file
Create a file namedassetlinks.json with the following content:your.package.namewith your actual Android package nameSHA-256:XX:XX:XX:...with your app’s SHA-256 fingerprint
Get your app’s SHA-256 fingerprint
For debug builds:Step 2: Save Verification Config in Linkrunner
Linkrunner hosts your verification files automatically so you don’t have to manage server configuration yourself.- Log in to your Linkrunner dashboard
- Go to Project Settings from the navigation menu
- In the Domain Verification section:
- Paste your
apple-app-site-associationJSON in the iOS (Only JSON allowed) text area - Paste your
assetlinks.jsoncontent in the Android (Only JSON allowed) text area
- Paste your
- Click Save
- iOS:
https://your-domain.io/.well-known/apple-app-site-association - Android:
https://your-domain.io/.well-known/assetlinks.json
Step 3: Update Native Configuration
These changes are the same whether you’re using React Native or Flutter.- Android
- iOS
Open
android/app/src/main/AndroidManifest.xml and add the following inside the <activity> section:Step 4: Configure Navigation
- React Native
- Flutter
React Native uses React Navigation for handling deep links.
Custom URI Schemes
Custom URI schemes use a custom protocol likemyapp:// and don’t require domain verification. They’re useful for backward compatibility or simpler setups.
Native Configuration
- Android
- iOS
Open
android/app/src/main/AndroidManifest.xml and add inside the <activity> section:Testing Your Deep Links
- Android
- iOS
- Web
Use
adb to test:Troubleshooting
- App doesn’t open automatically: Ensure your
assetlinks.jsonis correctly formatted, the SHA-256 fingerprint matches your signing key, and the file is accessible via HTTPS. - Verification warnings: Look for “IntentFilterIntentSvc” messages in logcat for details on verification failures.













