Skip to content

Configuring Android

Android App Links let users tap a link and open your app directly, without a disambiguation dialog. When configured correctly, links on your Tolinku domain will launch your app and pass the URL for in-app navigation.

Before you begin, you will need:

  • A Google Play Developer account (if publishing to the Play Store)
  • Your app’s package name (e.g. com.yourcompany.appname)
  • Your app’s SHA-256 signing certificate fingerprint
  • Your app configured to handle android.intent.action.VIEW intents

Open App Config in the sidebar and expand the Android Configuration section.

The package name uniquely identifies your app on Android. It is the applicationId in your build.gradle file (e.g. com.fooddash.android).

Android uses SHA-256 fingerprints to verify that your app is authorized to handle links from your domain. You need the fingerprint of your app signing key (not the upload key if you use Google Play App Signing).

If you use Google Play App Signing (the default for new apps):

  1. Open the Google Play Console
  2. Select your app
  3. Go to Setup > App signing
  4. Copy the SHA-256 certificate fingerprint under “App signing key certificate”

Paste the fingerprint into the SHA-256 Fingerprints field. If you have multiple signing keys (for example, a debug key and a release key), enter them comma-separated.

Provide a direct link to your app on the Google Play Store. This is used as a fallback when users do not have your app installed. The format is:

https://play.google.com/store/apps/details?id=com.yourcompany.appname

When you save your Android configuration, Tolinku automatically generates and hosts a Digital Asset Links file at:

https://your-domain.tolinku.com/.well-known/assetlinks.json

This file tells Android that your app is authorized to handle links from your domain. Tolinku keeps this file in sync with your configuration.

  1. Android checks the assetlinks.json file for your domain
  2. If the app is installed and the fingerprint matches, Android opens the app directly (no disambiguation dialog)
  3. Your app receives an Intent with the full URL for navigation
  4. If the app is not installed, the user is redirected to the Play Store or your fallback URL

Your Android app needs an intent filter in the manifest to receive App Links:

AndroidManifest.xml
<activity android:name=".MainActivity"
android:exported="true">
<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="your-subdomain.tolinku.com" />
</intent-filter>
<!-- Add custom domain if applicable -->
<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="links.yourapp.com" />
</intent-filter>
</activity>

The android:autoVerify="true" attribute tells Android to verify your domain against the assetlinks.json file at install time.

When your app opens via an App Link, extract the URL from the intent and route the user:

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// Handle the deep link
intent?.data?.let { uri ->
val path = uri.path // e.g. "/restaurant/abc123"
navigateToContent(path)
}
}
override fun onNewIntent(intent: Intent) {
super.onNewIntent(intent)
// Handle links when app is already running
intent.data?.let { uri ->
navigateToContent(uri.path)
}
}

For a full integration guide with the Tolinku SDK (which adds deferred deep linking and attribution), see the Android SDK documentation.

  1. Check the Asset Links file: Open https://your-domain.tolinku.com/.well-known/assetlinks.json in a browser. You should see a JSON array with your package name and SHA-256 fingerprint.

  2. Use the verification tool: Google provides a Statement List Generator and Tester to verify your Digital Asset Links.

  3. Test on a device: Install your app via ADB or the Play Store, then open a link. You can test with:

    Terminal window
    adb shell am start -a android.intent.action.VIEW \
    -d "https://your-subdomain.tolinku.com/your-route"
  4. Check verification status:

    Terminal window
    adb shell pm get-app-links com.yourcompany.appname

    Look for verified in the output.

IssueSolution
Disambiguation dialog still showsVerify that android:autoVerify="true" is set and the assetlinks.json fingerprint matches your signing key
assetlinks.json returns 404Make sure your Android settings are saved and your domain is configured
Links work on some devices but not othersSome manufacturers customize the default browser behavior. Test on a stock Android device or emulator
Verification fails silentlyRun adb shell pm get-app-links to check. Common cause: using the upload key fingerprint instead of the app signing key

For more help, see Troubleshooting App Links.