Android App Links allow your app to open web URLs directly without showing the disambiguation dialog. However, setting them up requires perfect synchronization between your Android Manifest and your web server's assetlinks.json.

The assetlinks.json Location

Your verification will primary fail if the assetlinks.json file is not reachable at exactly https://yourdomain.com/.well-known/assetlinks.json. No redirects allowed, and it MUST be served with Content-Type: application/json.

Manifest Settings <intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.action.BROWSABLE" />
<data android:scheme="https" android:host="example.com" />
</intent-filter>

The Fingerprint Trap

One of the most common mistakes is using the Debug certificate fingerprint in your assetlinks.json. When you upload to Play Store, Google re-signs your app. You must use the App Signing Certificate SHA-256 fingerprint from the Play Console.

Troubleshooting with ADB

Don't wait for Google Play to verify. You can force a verification check using ADB to see the exact failure reason.

ADB Command adb shell pm verify-applinks --package com.example.app

Summary

Check your HTTPS, verify your SHA-256 fingerprint in Play Console, and use ADB to debug verification states. Smooth links, smooth experience!