# Android SDK

### **Начать**

Чтобы начать отслеживание с помощью Android SDK Offer18, вам нужно интегрировать SDK в ваше приложение как зависимость.

Для **Gradle** в **Kotlin,** Добавьте зависимости в `build.gradle.kts` файл

```gradle
implementation("com.offer18:android-sdk:{VERSION}")
```

Для **Gradle** в **Groovy,**  Добавьте зависимости в `build.gradle` файл

```gradle
implementation 'com.offer18:android-sdk:{VERSION}'
```

{% hint style="warning" %}
Вы должны заменить `{VERSION}` на последнюю стабильную версию Android SDK от Offer18
{% endhint %}

Узнать последнюю стабильную версию Android SDK

{% embed url="<https://central.sonatype.com/artifact/com.offer18/android-sdk>" %}

***

### Разрешения

Убедитесь, что вашему приложению предоставлены приведённые ниже разрешения

```xml
<uses-permission android:name="android.permission.INTERNET"/>
```

***

### Инициализация SDK

Импорт `Offer18` Класс из `com.offer18.sdk` пакета

```java
import com.offer18.sdk.Offer18;
```

Чтобы инициализировать SDK, вставьте приведённый фрагмент кода в код вашего приложения.

{% code fullWidth="false" %}

```java
Offer18.init(getApplicationBaseContext(), "{DOMAIN}", "{ACCOUNT_ID}","tid_key_in_referrer_url");
```

{% endcode %}

{% hint style="info" %}

* Замените `{DOMAIN}` на ваш домен для отслеживания.&#x20;
* Замените `{ACCOUNT_ID}` на ваш идентификатор аккаунта.
* Замените **tid\_key\_in\_referrer\_url** На ваш собственный ключ параметра для tid
  {% endhint %}

***

### Отслеживать конверсии

Импорт `Offer18` Класс из `com.offer18.sdk` пакета

```java
import com.offer18.sdk.Offer18;
```

Чтобы активировать отслеживание конверсий с помощью Android SDK Offer18, вам нужно вставить конкретный фрагмент кода на страницу успешного оформления заказа (страницу благодарности) вашего приложения.

```java
Map<String, String> args = new HashMap<>();  
args.put("o", ""); // 0000000 (ID оффера)
args.put("tid", "");  // x-xxxx-xxxxxx-xxxxxx (ID клика)
args.put("event", ""); // install
args.put("adv_sub1", ""); 
args.put("adv_sub2", "");
args.put("adv_sub3", "");
args.put("adv_sub4", "");
args.put("adv_sub5", "");
args.put("coupon", "");
args.put("sale", "");
args.put("payout", "");
Offer18.trackConversion(args);
```

***

### Отслеживание конверсии (автоматически)

Импорт `Offer18` Класс из `com.offer18.sdk` пакета

```java
import com.offer18.sdk.Offer18;
```

Если вы предпочитаете не извлекать данные Referrer для получения ID клика, вы можете использовать ключ Click ID Offer18 в конфигурации.

#### Инициализировать SDK&#x20;

Чтобы инициализировать SDK, вставьте приведённый фрагмент кода в код вашего приложения.&#x20;

```java
Offer18.init(getApplicationBaseContext(), "{DOMAIN}", "{ACCOUNT_ID}","tid_key_in_referrer_url");
```

#### Завершить конверсию

```java
Map<String, String> args = new HashMap<>();  
args.put("o", ""); // Offer ID  
args.put("tid", "{REFERRER_TID}"); // Автозаполнение TID
args.put("event", ""); // install
args.put("adv_sub1", "");
args.put("adv_sub2", "");
args.put("adv_sub3", "");
args.put("adv_sub4", "");
args.put("adv_sub5", "");
args.put("coupon", "");
args.put("sale", "");
args.put("payout", "");
Offer18.trackConversion(args);
```

{% hint style="info" %}
Символ "**{REFERRER\_TID}**" автоматически получит ID клика из URL реферера и включит его в trackConversion.

* TID будет определён автоматически на основе ключа, переданного при инициализации SDK
* Замена произойдёт, когда микрос **{REFERRER\_TID}** обнаружен
* **trackConversion** не сработает, если
  * Нет ручного **tid** предоставлено,&#x20;
  * Нет **tid** обнаружено с помощью URL реферера&#x20;
  * **tid** обнаружено, но макрос не предоставлен&#x20;
  * Макрос предоставлен, но нет **tid** или пустой **tid** обнаружено из URL реферера
    {% endhint %}
