Deep links are how a tap in an email, an ad, a text in a chat app, or a search result lands a user on the right screen inside your Android app. When they break, users end up on a generic home screen or in the browser, and the campaign or onboarding flow behind that link quietly loses people. This guide covers how to test deep links and verified Android App Links. It also shows where a real physical device adds coverage on top of an emulator.

Deep links vs verified App Links

Android supports two related mechanisms:

Most real bugs show up in the verification step and in how different source apps hand the link off.

What an emulator handles well

Be honest about this part: an emulator is a good tool for a lot of deep link work. You can fire intents, check that each URI pattern reaches the right activity, and unit test your routing logic quickly. For early development that is often enough.

Where a real device adds coverage

A practical QA checklist

  1. Confirm assetlinks.json is served over https with a 200 response, the correct content type, and no redirects.
  2. Check that the SHA-256 fingerprint in the file matches your release signing key, including the Play App Signing key if you use it.
  3. Install the release build and check whether links open directly in the app or fall back to the browser.
  4. Tap the same link from Chrome, Gmail, and at least one in-app browser.
  5. Test cold start versus app already running, and confirm the correct screen and back stack.
  6. Test logged-out users, and make sure the destination survives the login redirect.
  7. Update the app and repeat to confirm verification persists.

Scope to keep in mind

A Google Pixel represents stock Android behavior. Some manufacturers change default browsers and link handling, so a full release matrix may still include other brands. For a clean reference baseline on real US hardware, a dedicated Pixel you control from your browser is a fast way to check your link flows before every release. Each DistrictDroid rental is a dedicated device that is reset between customers, so every test cycle starts from a known state.

DistrictDroid rents real US Android phones with full browser access and a real US SIM, from $30/day or $150/month. Crypto accepted.