Library Perujuk Instal Play

Anda dapat menggunakan Install Referrer API dari Google Play Store untuk mengambil konten perujuk dengan aman dari Google Play. Library Klien Play Install Referrer API ditulis dalam bahasa pemrograman Java dan merupakan wrapper untuk file Android Interface Definition Language (AIDL) yang menentukan antarmuka ke layanan Install Referrer. Anda dapat menggunakan Library Klien Play Install Referrer API untuk menyederhanakan proses pengembangan.

Panduan ini mencakup dasar-dasar pengambilan informasi perujuk dari Google Play menggunakan Library Play Install Referrer.

Mengupdate dependensi aplikasi Anda

Tambahkan baris berikut ke bagian dependensi file build.gradle untuk aplikasi Anda:

Groovy

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

Kotlin

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

Menghubungkan ke Google Play

Sebelum dapat menggunakan Library Play Install Referrer API, Anda harus membuat koneksi ke aplikasi Play Store dengan langkah-langkah berikut:

  1. Panggil metode newBuilder() untuk membuat instance class InstallReferrerClient.
  2. Panggil startConnection() untuk membuat koneksi ke Google Play.

  3. Metode startConnection() bersifat asinkron, sehingga Anda harus mengganti InstallReferrerStateListener untuk menerima callback setelah startConnection() selesai.

  4. Ganti metode onInstallReferrerSetupFinished() agar diberi tahu saat callback selesai. Metode ini dipanggil dengan kode respons yang harus Anda gunakan untuk menangani status yang berbeda. OK menunjukkan bahwa koneksi berhasil. Setiap konstanta InstallReferrerResponse lainnya ditujukan untuk jenis error yang berbeda.

  5. Ganti metode onInstallReferrerServiceDisconnected() untuk menangani koneksi ke Google Play yang terputus. Misalnya, koneksi klien Library Play Install Referrer dapat terputus jika layanan Play Store sedang diupdate di latar belakang. Klien library harus memanggil metode startConnection() untuk memulai ulang koneksi sebelum membuat permintaan lebih lanjut.

Kode berikut menunjukkan cara memulai dan menguji koneksi ke aplikasi 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.
    }
});

Mendapatkan perujuk instal

Setelah koneksi Anda terhubung ke aplikasi Play Store, dapatkan detail dari perujuk penginstalan dengan menyelesaikan langkah-langkah berikut:

  1. Gunakan metode getInstallReferrer() yang tersinkron untuk menampilkan instance ReferrerDetails.

  2. Gunakan metode yang disediakan oleh class ReferrerDetails untuk mendapatkan detail mengenai perujuk penginstalan.

Kode berikut ini menunjukkan cara mengakses informasi perujuk penginstalan:

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();

Perhatian: Informasi perujuk penginstalan akan tersedia selama 90 hari dan tidak akan berubah kecuali aplikasi diinstal ulang. Untuk menghindari panggilan API yang tidak diperlukan dalam aplikasi, Anda harus memanggil API hanya sekali selama eksekusi pertama setelah penginstalan.

Memutus koneksi layanan

Setelah mendapatkan informasi perujuk, panggil metode endConnection() pada instance InstallReferrerClient Anda untuk memutus koneksi. Memutus koneksi akan membantu Anda terhindar dari kebocoran dan masalah performa.

Untuk informasi lebih lanjut, lihat Referensi Library Play Install Referrer.