Platform setup Android
Set up Android App Links
Verify your HTTPS domain against your Android app so matching links can open directly in the app. You’ll register the signing certificate, publish Digital Asset Links, and verify the installed app.
What you’ll need
- A public link domain, such as
go.yourcompany.com, with working HTTPS. - The app’s exact package name (application ID).
- The SHA-256 fingerprint for each certificate that signs a distributed app build.
Signing certificate
Find your package name and fingerprint
For a local keystore, list the certificate details using the alias for your signing key:
keytool -list -v -keystore your_keystore.jks -alias your-key-alias
Copy the SHA-256 value exactly, including its colon separators. If you use Google Play App Signing, find the app signing certificate under Play Console → your app → Setup → App signing. Add every signing certificate needed for the builds you distribute, such as separate debug and production certificates.
The package name must match the app’s application ID exactly; it is case-sensitive.
Lativiq configuration
Add your domain and app details
Open Universal Links & App Links and create or edit the configuration for your link domain.
- Domain
go.yourcompany.com- Package name
com.yourcompany.app- SHA-256 fingerprint
14:6D:E9:83:...:E5
Use the domain only—don’t include https:// or a path. If you have multiple signing certificates, enter each fingerprint as a comma-separated value.
App configuration
Declare the domain in your app manifest
Add an HTTPS intent filter to the activity that handles incoming links. Set android:autoVerify="true" and replace the host with your actual link domain:
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="https" android:host="go.yourcompany.com" />
</intent-filter>
Add an intent filter for each domain the app should handle. The manifest host must match the domain in Lativiq and assetlinks.json. See Android’s App Links setup guide.
Domain association
Publish the Digital Asset Links file
Android fetches assetlinks.json from this exact URL:
https://go.yourcompany.com/.well-known/assetlinks.json
The response must include the exact package name and SHA-256 fingerprint for the installed app. A simplified example is:
[{
"relation": ["delegate_permission/common.handle_all_urls"],
"target": {
"namespace": "android_app",
"package_name": "com.yourcompany.app",
"sha256_cert_fingerprints": [
"14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5"
]
}
}]
Serve valid JSON directly over HTTPS. For dynamic hosting, the domain must resolve to Lativiq or a proxy that forwards the original host; otherwise, host the generated file on your web server.
Verify and test
Check the file and app verification state
Confirm the public URL returns the expected JSON, then use Verify Domain in the Lativiq configuration:
curl -i https://go.yourcompany.com/.well-known/assetlinks.json
After installing the app on a device, you can request a fresh verification and inspect its state with Android Debug Bridge:
adb shell pm verify-app-links --re-verify com.yourcompany.app
adb shell pm get-app-links com.yourcompany.app
Tap a matching HTTPS link from another app or message to test the handoff. Don’t rely only on opening the URL directly in a browser.
See Android’s App Links verification guide for platform-specific checks.