Libreria referrer di Installazione di Google Play

Puoi utilizzare l'API Install Referrer del Google Play Store per recuperare in modo sicuro contenuti di referral da Google Play. Libreria client dell'API Play Install Referrer è scritto nel linguaggio di programmazione Java ed è un wrapper per l'interfaccia Interface Definition Language (AIDL) che definisce l'interfaccia Installa il servizio Referrer. Puoi utilizzare il client API Play Install Referrer per semplificare il processo di sviluppo.

Questa guida illustra le nozioni di base relative al recupero delle informazioni sui referral da Google Gioca usando la libreria dei referrer di installazione di Play.

Aggiornamento delle dipendenze dell'app

Aggiungi la riga seguente alla sezione delle dipendenze del file build.gradle per la tua app:

Alla moda

dependencies {
    ...
    implementation "com.android.installreferrer:installreferrer:2.2"
}

Kotlin

dependencies {
    ...
    implementation("com.android.installreferrer:installreferrer:2.2")
}

Connessione a Google Play in corso...

Prima di poter utilizzare la libreria API Play Install Referrer, devi stabilisci una connessione all'app Play Store utilizzando quanto segue passaggi:

  1. Chiama il newBuilder() per creare un'istanza InstallReferrerClient .
  2. Chiama il startConnection() per stabilire una connessione a Google Play.

  3. La startConnection() è asincrono, quindi devi sostituire InstallReferrerStateListener di essere richiamato dopo startConnection() vengono completate.

  4. Esegui l'override di onInstallReferrerSetupFinished(). ricevere una notifica al completamento del callback. Questo metodo è chiamato con un codice di risposta che devi usare per gestire i diversi stati. OK indica che la connessione è riuscita. L'una sull'altra InstallReferrerResponse per diversi tipi di errori.

  5. Esegui l'override di onInstallReferrerServiceDisconnected(). per gestire le connessioni perse a Google Play. Per Ad esempio, il client libreria referrer di installazione di Play potrebbe perdere la connessione se Il servizio Play Store viene aggiornato in background. Il client della libreria deve chiamare il startConnection() per riavviare la connessione prima di effettuare ulteriori richieste.

Il codice seguente mostra come avviare e testare una connessione al App Play Store:

Kotlin

private lateinit var referrerClient: InstallReferrerClient

referrerClient = InstallReferrerClient.newBuilder(this).build()
referrerClient.startConnection(object : InstallReferrerStateListener {

    override fun onInstallReferrerSetupFinished(responseCode: Int) {
        when (responseCode) {
            InstallReferrerResponse.OK -> {
                // Connection established.
            }
            InstallReferrerResponse.FEATURE_NOT_SUPPORTED -> {
                // API not available on the current Play Store app.
            }
            InstallReferrerResponse.SERVICE_UNAVAILABLE -> {
                // Connection couldn't be established.
            }
        }
    }

    override fun onInstallReferrerServiceDisconnected() {
        // Try to restart the connection on the next request to
        // Google Play by calling the startConnection() method.
    }
})

Java

InstallReferrerClient referrerClient;

referrerClient = InstallReferrerClient.newBuilder(this).build();
referrerClient.startConnection(new InstallReferrerStateListener() {
    @Override
    public void onInstallReferrerSetupFinished(int responseCode) {
        switch (responseCode) {
            case InstallReferrerResponse.OK:
                // Connection established.
                break;
            case InstallReferrerResponse.FEATURE_NOT_SUPPORTED:
                // API not available on the current Play Store app.
                break;
            case InstallReferrerResponse.SERVICE_UNAVAILABLE:
                // Connection couldn't be established.
                break;
        }
    }

    @Override
    public void onInstallReferrerServiceDisconnected() {
        // Try to restart the connection on the next request to
        // Google Play by calling the startConnection() method.
    }
});

Recupero del referrer di installazione

Dopo aver stabilito una connessione all'app Play Store, scarica i dettagli dal referrer di installazione, completando i seguenti passaggi:

  1. Utilizza lo strumento getInstallReferrer() per restituire un'istanza ReferrerDetails.

  2. Utilizza i metodi utilizzati ReferrerDetails per ottenere dettagli sul referrer di installazione.

Il codice seguente mostra come accedere al referrer di installazione informazioni:

Kotlin

val response: ReferrerDetails = referrerClient.installReferrer
val referrerUrl: String = response.installReferrer
val referrerClickTime: Long = response.referrerClickTimestampSeconds
val appInstallTime: Long = response.installBeginTimestampSeconds
val instantExperienceLaunched: Boolean = response.googlePlayInstantParam

Java

ReferrerDetails response = referrerClient.getInstallReferrer();
String referrerUrl = response.getInstallReferrer();
long referrerClickTime = response.getReferrerClickTimestampSeconds();
long appInstallTime = response.getInstallBeginTimestampSeconds();
boolean instantExperienceLaunched = response.getGooglePlayInstantParam();

Attenzione: le informazioni del referrer di installazione verranno disponibile per 90 giorni e non cambierà a meno che la domanda non sia reinstallato. Per evitare chiamate API non necessarie nella tua app, devi richiamare il metodo L'API solo una volta durante la prima esecuzione dopo l'installazione.

Chiusura della connessione al servizio in corso...

Dopo aver ottenuto le informazioni sul referrer, chiama il metodo endConnection() sul tuo InstallReferrerClient per chiudere la connessione. Se chiudi la connessione, eviterai di farlo di perdite di dati e problemi di prestazioni.

Per ulteriori informazioni, leggi la libreria dei referrer per l'installazione di Play. Riferimento.