Skip to content
Proofline

Guides

Android Install Referrer

On Android, the click ID can survive the install. The creator link sends the user to Google Play with the click ID in the referrer parameter; after install, your app reads it with the Play Install Referrer API. That is a deterministic match (DDeterministic D2).

What the link does

https://play.google.com/store/apps/details?id=com.example.app&referrer=proofline_click%3Dk7Q2xAb3dE5g

Where an in-app browser blocks Play links, the landing page uses an intent:// URL instead. If the app is already installed, an App Link opens it directly (D3).

Read the referrer after install

React Native: pass a bridge with getInstallReferrer() to the adapter; it calls setInstallReferrer once after install.

const proofline = createReactNativeAdapter({
  linking: Linking,
  asyncStorage: AsyncStorage,
  installReferrer: { getInstallReferrer: () => PlayInstallReferrer.get() },
  platform: 'android',
});

Any JavaScript runtime: call it yourself with the raw string.

import { setInstallReferrer } from '@proofline/sdk-js';

setInstallReferrer('proofline_click=k7Q2xAb3dE5g');

It is sent once per click ID, so calling it on every launch is harmless.

Join renewals to the user

Pass the ID from identify as obfuscatedAccountId in your Play Billing flow params, so every renewal and refund joins to the same user.

Click injection

The Install Referrer API also returns when the referrer was clicked and when the install began. A “click” timestamped after the install began is click injection; Proofline ignores the signal and raises a click_injection fraud flag.