WarpLink
SDKsAndroid

Android SDK

Integrate the WarpLink Android SDK with Gradle to add deep linking, deferred deep links, and install attribution to your app.

Requirements: Android API 26+ (Android 8.0+), Kotlin 1.8+. A physical device is recommended for App Links verification.

Source: github.com/WarpLinkApp/warplink-android-sdk

Installation

Add the dependency to your app's build.gradle.kts:

Sync your project with Gradle files.

Configure the SDK

Initialize WarpLink in your Application.onCreate(). Pass an onLink callback and configure() auto-registers cold-start handling and auto-fires the deferred deep link check. Your one callback receives every resolved link.

The credential below is an SDK key, created in the dashboard under API Keys > SDK key. An API key looks identical but cannot record installs: deep links still resolve, so the integration looks healthy while every attribution call is rejected.

Register your Application class in AndroidManifest.xml and grant internet access:

Warm Start Needs One Line

Cold start is automatic. For warm start (app already running when a link arrives), forward the new intent from your launch Activity:

Set android:launchMode="singleTask" on that Activity so warm-start links reuse the existing instance.

Opt Out of Automatic Handling

Add the intent filter to your main Activity in AndroidManifest.xml:

The android:autoVerify="true" attribute triggers automatic assetlinks.json verification at install time.

Serving links from a custom domain? Add a second <data> line for it (android:host="links.yourapp.com"), then declare it to the SDK as below.

The SDK always recognizes aplnk.to. If your links are served from a custom domain, tell the SDK which domains are yours. Then a link on that domain resolves on the very first launch, with no network round trip.

This matters because the decision is synchronous. The launch intent arrives before the SDK has ever reached the server, so a domain it has not been told about is treated as somebody else's link and left to your own routing.

Declare them in code:

Or declare them with no code at all, in AndroidManifest.xml. The value is a comma separated list, inside <application>:

Both forms are optional and both are additive. The SDK uses the union of aplnk.to, linkDomains, the manifest list, and the domains it learns from the server, so an app that declares nothing keeps working exactly as before.

Entries are normalized for you: whitespace is trimmed, the value is lowercased, and a full URL is reduced to its host, so https://Links.YourApp.com/ and links.yourapp.com mean the same thing. www. is left alone, because www.yourapp.com and yourapp.com are different hosts.

Get Your SHA256 Fingerprint

Register your signing key fingerprint in the WarpLink dashboard for App Links verification.

Copy the SHA256 value and paste it into the dashboard under Apps.

Test on a Physical Device

Next Steps

On this page