Play Установить библиотеку рефереров,Play Установить библиотеку рефереров

Вы можете использовать API Install Referrer в Google Play Store для безопасного получения реферального контента из Google Play. Клиентская библиотека Play Install Referrer API написана на языке программирования Java и представляет собой оболочку для файла языка определения интерфейса Android (AIDL), который определяет интерфейс службы Install Referrer. Вы можете использовать клиентскую библиотеку Play Install Referrer API, чтобы упростить процесс разработки.

В этом руководстве описаны основы получения реферальной информации из Google Play с помощью библиотеки Play Install Referrer Library.

Обновление зависимостей вашего приложения

Добавьте следующую строку в раздел зависимостей файла build.gradle вашего приложения:

классный

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

Котлин

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

Подключение к Google Play

Прежде чем вы сможете использовать библиотеку API-интерфейса Play Install Referrer, вам необходимо установить соединение с приложением Play Store, выполнив следующие действия:

  1. Вызовите метод newBuilder() , чтобы создать экземпляр класса InstallReferrerClient .
  2. Вызовите startConnection() , чтобы установить соединение с Google Play.

  3. Метод startConnection() является асинхронным, поэтому необходимо переопределить InstallReferrerStateListener чтобы получить обратный вызов после завершения startConnection() .

  4. Переопределите метод onInstallReferrerSetupFinished() чтобы получать уведомления о завершении обратного вызова. Этот метод вызывается с кодом ответа, который необходимо использовать для обработки различных состояний. OK означает, что соединение прошло успешно. Каждая из остальных констант InstallReferrerResponse предназначена для разных типов ошибок.

  5. Переопределите метод onInstallReferrerServiceDisconnected() для обработки потерянных подключений к Google Play. Например, клиент библиотеки Play Install Referrer может потерять соединение, если служба Play Store обновляется в фоновом режиме. Клиент библиотеки должен вызвать метод startConnection() , чтобы перезапустить соединение, прежде чем отправлять дальнейшие запросы.

Следующий код демонстрирует, как запустить и проверить подключение к приложению Play Store:

Котлин

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.
    }
})

Ява

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.
    }
});

Получение реферера установки

После того как вы установили соединение с приложением Play Store, получите подробную информацию от источника установки, выполнив следующие шаги:

  1. Используйте синхронизированный метод getInstallReferrer() чтобы вернуть экземпляр ReferrerDetails .

  2. Используйте методы, предоставляемые классом ReferrerDetails , чтобы получить подробную информацию об реферере установки.

Следующий код демонстрирует, как вы можете получить доступ к информации о реферере установки:

Котлин

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

Ява

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

Внимание: информация об источнике установки будет доступна в течение 90 дней и не изменится, пока приложение не будет переустановлено. Чтобы избежать ненужных вызовов API в вашем приложении, вам следует вызывать API только один раз во время первого выполнения после установки.

Закрытие сервисного соединения

После получения информации о реферере вызовите метод endConnection() в экземпляре InstallReferrerClient , чтобы закрыть соединение. Закрытие соединения поможет избежать утечек и проблем с производительностью.

Дополнительную информацию можно найти в Справочнике библиотеки Play Install Referrer .