# Быстрый старт — iOS

Это руководство поможет установить MADS SDK и показать первое рекламное объявление в iOS-приложении.

## 1. Добавление зависимостей

В Xcode проекте добавьте пакет: **File → Add Package Dependencies**.

Укажите URL репозитория с Swift Package. Рекомендуем зафиксировать определённую версию библиотеки:

```
https://github.com/magnit-tech/mads-ios-sdk
```

Убедитесь, что MadSDK прилинковано к таргету вашего приложения.

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

Инициализацию SDK лучше всего выполнить в классе `SceneDelegate` или `AppDelegate`:

```swift
import MadSDK

MadsSDK.initialize()
```

## 3. Идентификация пользователя

Когда пользователь входит в систему, важно связать его действия, совершенные анонимно, с его постоянным профилем. Для этого после авторизации передайте внутренний `userId`:

```swift
MadsSDK.userId = "sample-user-id"
```

## 4. Конфигурация SDK

| Настройка | Описание |
|-----------|----------|
| `MadsSDK.isDebugLogsEnabled = true` | Включает дебаг-логи в консоль |

### Таймаут запроса за рекламой

Таймаут сетевого запроса за рекламой задаётся параметром `adRequestTimeoutMillis` метода `initialize(...)` в **миллисекундах**. По умолчанию — `10_000` (10 секунд). Если ответ не получен за отведённое время, загрузка завершается ошибкой `requestTimeout`.

```swift
import MadSDK

// adRequestTimeoutMillis — таймаут в миллисекундах (по умолчанию 10_000 = 10 секунд)
MadsSDK.initialize(adRequestTimeoutMillis: 5_000) // 5 секунд
```

- При превышении таймаута загрузка завершается ошибкой `requestTimeout` (`InAppAdLoadError` / `InlineAdLoadError`). Обработать её можно в колбэке загрузки соответствующего формата — см. [In App Message](<Рекламные форматы/In App Message/подформаты/modal-window.md>) и [InLine](<Рекламные форматы/InLine/подформаты/multiformat.md>).

> [!NOTE]
> Параметр задаётся в миллисекундах — единообразно с Android SDK.

## Что дальше?

- [In App Message (Модальное окно)](<Рекламные форматы/In App Message/подформаты/modal-window.md>) — показ всплывающей рекламы
- [InLine (Баннеры)](<Рекламные форматы/InLine/подформаты/multiformat.md>) — встраивание рекламных блоков в контент
