Open Deep links from the sidebar. It takes four steps, and the screen marks each one done as you go.
1. A domain of your own
Deep links need a verified custom domain. They can't run on the shared qrrd.in: on a shared host, one customer's app could claim another customer's codes, and nothing on Android can prevent that. See Custom domains.
2. Authorise your app
For an iPhone app, choose Add an iPhone app and enter its Apple App ID: your 10-character Team ID, a dot, then the bundle id, such as ABCDE12345.com.acme.app. The Team ID is in your Apple Developer account.
For an Android app, choose Add an Android app and enter:
- the Package name, the applicationId from your build.gradle;
- the Signing certificate fingerprints, SHA-256, one per line. Add the Play App Signing key as well as your upload key. A missing key is the usual reason links stop opening the app after release.
To share a domain between two apps, use Limit to a path, such as /products/*. Left empty, the app opens every link on the domain.
Choose Authorise this app. The file is published at once, and devices pick it up over the next day or so.
Before you authorise, the screen says how many of your codes already use this domain. Authorising changes what they do on a phone, including copies already printed.
3. Name the domain in your app
The screen shows exactly what to paste: the Associated Domains line for Xcode, under Signing & Capabilities, and the intent filter for AndroidManifest.xml.
4. Test on a phone
Only a real device can confirm it works. Apple caches the file for up to 48 hours, and installed devices re-check about once a week.
What came back from your app
The screen counts app opens: those where the app found a screen, those that reached the app with no screen for them, and those from builds that don't report back. If your app opens on a blank screen, the link is reaching it and the app doesn't recognise the destination.
To report, send the header X-Deep-Link-Reports: 1 when your app asks us to resolve a link, and POST to /_unhandled/<code> when it has no screen for what we returned.
Remove an app
Choose Remove. Scans go to the browser instead once devices refresh.