On this page
Android App Links (formerly called Deep Links with verified domain association) require an assetlinks.json file on your domain that matches your app's signing certificate. When a link opens a browser instead of the installed app, one of six conditions is the cause.
Fix steps
Confirm
assetlinks.jsonis reachable. Visithttps://yourdomain.com/.well-known/assetlinks.jsonin a browser. The file must return HTTP 200, content-typeapplication/json, over HTTPS, with no redirects. A redirect — even same-host — fails verification.Verify the signing fingerprint matches the installed build. The
sha256_cert_fingerprintsfield inassetlinks.jsonmust match the SHA-256 of the certificate that signed the installed APK. Different fingerprints for debug and release builds are common; verify you are testing the right one. Runkeytool -list -v -keystore <path>to confirm.Check the intent filter in your manifest. The activity that should receive the link needs an intent filter with
android:autoVerify="true",android:scheme="https", and the correctandroid:hostmatching the domain inassetlinks.json. A missingautoVerifyfalls back to the disambiguation dialog instead of opening the app directly.Inspect verification status on the device. Run
adb shell pm get-app-links com.your.packageon a connected device. The output lists each domain and its verification state.verifiedmeans it works.legacy_failuremeans assetlinks.json was unreachable at install time.Re-trigger verification. Run
adb shell pm verify-app-links --re-verify com.your.package. This forces Android to re-fetch and re-validate. Useful after fixing the assetlinks.json file.Check the link origin. App Links do not fire reliably from inside in-app browsers (Instagram, TikTok, Facebook Messenger). The webview opens the link itself rather than handing off to the system. A redirect layer that detects the webview and uses an Android intent URL is required.
If all six pass and links still open in a browser from a known-good origin, check whether the user disabled "Open supported links" for your app in Settings → Apps → [Your app] → Open by default.
Still not working?
If the link fires correctly from Chrome but not from Instagram or TikTok, you are hitting the in-app webview limitation. App Links verification alone does not solve it.
Want the full diagnosis? See Android assetlinks.json explained.
Related help
- Universal links not opening app
- Branch link goes to App Store every time
- PDF not opening from Instagram
Need a redirect layer that opens your Android app from inside Instagram and TikTok? Start free on linkboo →