# Установка и настройка аддона

Версия релиза **1.1.0** | Дата релиза 0&#x37;**.07.2025**

{% hint style="info" %}
Минимальные требования:

* Используйте Construct r368.2 и выше.
* Используйте Android API level 22 (Android OS 5.1) и выше.
* Используйте iOS 13.0 и выше.
* Используйте Xсode 13 и выше.
  {% endhint %}

## Демо-приложение

Используйте наше демо-приложение в качестве примера.

{% embed url="<https://github.com/YabbiSDKTeam/yabbi-construct3-demo>" %}

## Установка

### Общее описание процесса установки

Для установки Construct3 Addon вам потребуется:

* Ознакомиться с демо-приложением.
* Скачать и импортировать в проект последнюю версию аддона.
* Проверить корректность установки с помощью инициализации SDK с включенным режимом отладки.
* (необязательно) Если вы используете медиацию (работу с другими рекламными сетями через рекламную Yabbi), вам потребуется скачать и импортировать последнюю версию аддона для подключения медиации. Установка и настройка аддона для медиации описана в [соответствующем разделе](/yabbi-documentation/construct3-addon/ustanovka-i-nastroika-addona-dlya-mediacii-deprecated.md).

### Скачайте аддон

1. Скачайте последнюю версию аддона по [ссылке](https://sdkpkg.sspnet.tech/construct3/yabbi/latest/yabbi.c3addon).
2. Откройте `Menu` -> `View` -> `Addon manager`.

<figure><img src="/files/PcHWIkgY6jgmppE9Y0Ap" alt=""><figcaption></figcaption></figure>

3. В открывшемся меню нажмите кнопку `Install new addon...`, выберите аддон Yabbi, который вы скачали в пункте 1.

<figure><img src="/files/91kmkBDy6Z18GS6u7cLT" alt=""><figcaption></figcaption></figure>

4. Нажмите `Install`.

<figure><img src="/files/VDkIAoOQHExn8ygF4XFC" alt=""><figcaption></figcaption></figure>

5. Перезагрузите редактор Construct3.\
   \
   Если Yabbi SDK установился корректно - он появится в `Addon Manager`.

<figure><img src="/files/i5MmoMivWCWJZlQZkVaz" alt=""><figcaption></figcaption></figure>

6. Перейдите в ваш проект.
7. Нажмите на макете ПКМ, в открывшемся меню выберите `Insert new object`.

<figure><img src="/files/gIcYDcM8KpPY9jXAebYZ" alt=""><figcaption></figcaption></figure>

8. Выберите из списка Yabbi, нажмите кнопку `Insert`.

<figure><img src="/files/ujKHWvL9m38daHQkwsSq" alt=""><figcaption></figcaption></figure>

9. Сохраните проект.

### Проверка установки

Чтобы убедиться, что SDK установлена корректно, потребуется включить режим отладки, и инициализировать SDK.

### Режим отладки

В режиме отладки SDK логирует ошибки и события. По умолчанию выключен.

Для включения режима отладки используйте действие `EnableDebug`.

<figure><img src="/files/LF0h74hjV44F9kdYS1Dr" alt=""><figcaption></figcaption></figure>

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

1. Откройте список событий, нажмите кнопку `Add event`.

<figure><img src="/files/k2aezBtJ4ihASE6O8uZn" alt=""><figcaption></figcaption></figure>

2. Выберите `System` -> `On start of layout`.

<div><figure><img src="/files/NgfRBtGljHxacfdOsfbP" alt=""><figcaption></figcaption></figure> <figure><img src="/files/oc67rrUWJHTc3tfzdPWC" alt=""><figcaption></figcaption></figure></div>

3. Нажмите `Add Action` -> Выберите `Yabbi` -> `Initialize`.

<div><figure><img src="/files/pMFQxHrpQ4I28b8uCcXg" alt=""><figcaption></figcaption></figure> <figure><img src="/files/6B180JCtGTafB5CehA07" alt=""><figcaption></figcaption></figure> <figure><img src="/files/UEEn1WCgdDyZvWOfyUa8" alt=""><figcaption></figcaption></figure></div>

4. Введите в кавычках ваш `publisher_id`.\
   \
   Ваш `publisher_id` вы сможете скопировать в разделе "Настройки" в [личном кабинете](https://publisher.yabbi.me) Yabbi.

<figure><img src="/files/Jxc040XRnzrTonqy0jlS" alt=""><figcaption></figcaption></figure>

Запустите приложение в редакторе Construct3 и откройте консоль браузера (открывается на F12).

Если SDK установлена корректно, то вы увидите в консоли браузера следующее сообщение.

```
Call Initialize. Launch app in any platform to see result
```

<figure><img src="/files/T3Bhiiw635yz5cD4Apmx" alt=""><figcaption></figcaption></figure>

Сообщениие сигнализирует что SDK установлено правильно, но показ рекламы возможен только после сборки приложения под Android/iOS.

5. Вы можете дополнительно отслеживать статус инициалиазции аддона, для этого установите события `OnInitializedSuccess` и `OnInitializedFailed`.

<figure><img src="/files/odMtk2qPlRkkNKqW1D4j" alt=""><figcaption></figcaption></figure>

Готово! SDK установлена, можем переходить к [настройке рекламы](/yabbi-documentation/construct3-addon/rabota-s-reklamoi.md).

Рекомендуем вам не отключать режим отладки до завершения работы с рекламой.

### Если SDK устанавливается некорректно

В случае возникновения ошибок рекомендуем очистить кеш браузера.

Если это не помогло, попробуйте установить SDK в чистый проект. Если SDK установилась корректно, попробуйте отладить ошибки в вашем проекте.

Также рекомендуем взглянуть на установку и инициализацию в [демо-приложении](https://github.com/YabbiSDKTeam/yabbi-construct3-demo).

Если у вас не получается корректно установить SDK, и действия выше не привели к успешной инициализации — обратитесь в поддержку.

## Установка и настройка аддона для медиации

Если вы используете медиацию (работу с другими рекламными сетями через рекламную Yabbi), вам потребуется скачать и импортировать последнюю версию аддона для подключения медиации. Установка и настройка аддона для медиации описана в [соответствующем разделе](/yabbi-documentation/construct3-addon/ustanovka-i-nastroika-addona-dlya-mediacii-deprecated.md).

Пожалуйста, сделайте это до внедрения рекламы в логику вашего приложения.

## Дополнительные действия для повышения дохода

### Установка Apple ID

Для более эффективного работы таргетированной рекламы и повышения дохода Yabbi SDK собирает и передаёт с данными о пользователе [App ID](https://developer.apple.com/help/account/manage-identifiers/register-an-app-id/) - уникальный числовой идентификатор приложения из Apple AppStore.

Он определяется автоматически, но в некоторых случаях Yabbi SDK не может его определить.

Если Yabbi SDK не определил ваш App ID, то вы увидите в консоли следующее сообщение.

```
AppStore ID is nil. You must set AppStore ID manually.
```

В таком случае вам необходимо установить ID вручную.

Для установки Apple ID используйте действие `SetCustomParams`

<figure><img src="/files/WwVrYolobjE41MCU6bAP" alt=""><figcaption></figcaption></figure>

Установите в `Key` значение `appStoreAppID`.

Установите в `Value` ваш App ID из кабинета разработчика AppStore. Вы можете найти его на странице приложения в [кабинете разработчика](https://appstoreconnect.apple.com/).

<figure><img src="/files/37yMBEOJoqYBRZjkBCLf" alt=""><figcaption><p>Расположение Apple ID в AppStore Connect</p></figcaption></figure>

### Рекламный идентификато Apple (IDFA)

{% hint style="warning" %}
Вам понадобится экспортировать приложение в проект на Cordova. Подробнее вы можете прочитать по этой [ссылке](https://www.construct.net/en/tutorials/building-mobile-apps-locally-21).
{% endhint %}

Для более эффективного работы таргетированной рекламы и повышения дохода вы можете собирать рекламный идентификатор пользователя устройств Apple и передавать их в Yabbi SDK.

Чтобы включить сбор IDFA, вставьте следующий код в файл `config.xml` вашего приложения:

```xml
<?xml version='1.0' encoding='utf-8'?>
<widget id="your.app.id" version="1.0.0" xmlns:tools="http://schemas.android.com/tools" xmlns:android="http://schemas.android.com/apk/res/android" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
   <!-- ... other settings -->
   
    <platform name="ios">
        <config-file target="*-Info.plist" parent="NSUserTrackingUsageDescription">
            <string>We need this permission for better ad targetting</string>
        </config-file>
    </platform>
</widget>
```

### Сбор данных о геолокации

{% hint style="warning" %}
Вам понадобится экспортировать приложение в проект на Cordova. Подробнее вы можете прочитать по этой [ссылке](https://www.construct.net/en/tutorials/building-mobile-apps-locally-21).
{% endhint %}

Для более эффективного работы таргетированной рекламы и повышения дохода вы можете собирать в приложении данные о точной и/или примерной геолокации пользователя, и передавать их в Yabbi SDK.

{% tabs %}
{% tab title="Android" %}
По умолчанию  разрешения на геолокацию включены в Android SDK.

Если вы не хотите предоставлять данные о геолокации, вставьте следующий код в файл `config.xml` вашего приложения:

```xml
<?xml version='1.0' encoding='utf-8'?>
<widget id="your.app.id" version="1.0.0" xmlns:tools="http://schemas.android.com/tools" xmlns:android="http://schemas.android.com/apk/res/android" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
   <!-- ... other settings -->
   
    <platform name="android">
    
        <!-- ... other settings -->
        
        <!-- Нужно обязательно добавить эту строку -->
        <edit-config file="app/src/main/AndroidManifest.xml" target="/manifest" mode="merge">
            <manifest xmlns:tools="http://schemas.android.com/tools" />
        </edit-config>
        
        <!-- Разрешение для сбора приблизительной геолокации пользователя -->
        <config-file target="app/src/main/AndroidManifest.xml" parent="/*">
            <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" tools:node="remove" />
        </config-file>
        
        <!-- Разрешение для сбора приблизительной геолокации пользователя -->
        <config-file target="app/src/main/AndroidManifest.xml" parent="/*">
            <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" tools:node="remove" />
        </config-file>
    </platform>
</widget>
```

{% endtab %}

{% tab title="iOS" %}
Чтобы включить сбор данных о геолокации на iOS, вставьте следующий код в файл `config.xml` вашего приложения:

```xml
<?xml version='1.0' encoding='utf-8'?>
<widget id="your.app.id" version="1.0.0" xmlns:tools="http://schemas.android.com/tools" xmlns:android="http://schemas.android.com/apk/res/android" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
   <!-- ... other settings -->
   
    <platform name="ios">
        <config-file target="*-Info.plist" parent="NSLocationWhenInUseUsageDescription">
            <string>We need this permission for better ad targetting</string>
        </config-file>
    </platform>
</widget>
```

{% endtab %}
{% endtabs %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://yabbi.gitbook.io/yabbi-documentation/construct3-addon/ustanovka-i-nastroika-addona.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
