Appy

Deep linking

What are Android App Links?

Short answer

Android App Links are https links that Android has verified as belonging to your app, so a tap opens the app directly instead of asking which app to use. They work on Android 6 and later on devices with Google services, and need an intent filter with autoVerify plus an assetlinks.json file on your domain.

What verification needs

In the app’s manifest, the intent filter for your domain carries android:autoVerify="true". On the domain, /.well-known/assetlinks.json lists your package name and the SHA-256 fingerprints of the certificates that sign the app. Android checks that the two match. If they do, links to that domain open the app without a chooser dialog.

The usual failure

Most broken App Links share one cause: the file lists the key the developer signs with, but not the Play App Signing key Google uses for the copy people download from Google Play. Add that fingerprint and verify again.

To see the current state on a test phone, run adb shell pm get-app-links with your package name. It shows each domain and whether verification passed. If your domain isn’t marked as verified, start with the fingerprints.

ExampleCheck verification on a test phone
adb shell pm get-app-links com.example.app
Read moreAndroid App Links Not Verified: A Five-Minute Diagnosis with adbThe adb checklist that finds why an App Link opens the browser, including the Play signing key mismatch.
  • assetlinks.json

    assetlinks.json is the Digital Asset Links file that proves to Android your domain trusts your app, so verified App Links open the app directly. It sits at /.well-known/assetlinks.json, is served over HTTPS as JSON without redirects, and lists your package name with the SHA-256 fingerprints of your signing certificates.

  • Universal Links

    Universal Links are Apple’s https links that open an installed iOS app directly instead of the website, available since iOS 9. They need the Associated Domains entitlement in the app, such as applinks:example.com, and an apple-app-site-association file on the domain. Without the app, the same link simply opens the website.

  • Intent URL

    An intent URL is a link format for Chrome on Android that starts with intent:// and names an app’s scheme and package. If the app is installed, Chrome opens it on the right screen. If not, Chrome opens the web address given in browser_fallback_url, or the app’s Google Play page when there is none.

All glossary terms

One link for every phone

Create a free smart link and QR code that sends iPhones to the App Store, Android phones to Google Play and desktops to your website.