---
metadata:
  - name: generator
    content: Diplodoc Platform v5.50.3
alternate:
  - https://divkit.tech/docs/en/concepts/quick-start-ios.md
  - https://divkit.tech/docs/ru/concepts/quick-start-ios.md
---
> **Documentation Index:** Fetch the complete configuration index at https://divkit.tech/docs/ru/llms.txt

# iOS

Чтобы протестировать ваш код и посмотреть превью карточки на устройстве iOS, используйте приложение DivKit Playground. Вы можете добавить в приложение код карточки в формате JSON или открыть ссылку на него:

1. Скачайте исходные файлы DivKit Playground из [репозитория](https://github.com/divkit/divkit/tree/main/client/ios/DivKitPlayground), скомпилируйте и установите приложение на устройство.
1. Выберите **demo**.

1. Добавьте карточку одним из способов:

    - вставьте код в формате JSON или ссылку на прототип карточки в поле ввода;
    - [откройте](https://divkit.tech/docs/ru/concepts/quick-start-web.md#web-android) ссылку из редактора DivKit Web Playground.

    {% note tip "Совет" %}

    Для создания кода карточки вы можете использовать [библиотеку примеров DivKit Web Playground](https://divkit.tech/playground?samples=1).

    {% endnote %}

1. Чтобы посмотреть результат, нажмите кнопку **show the result**.

## Расширенный репортинг действий

DivKit iOS теперь предоставляет расширенный контекст для репортинга действий через новый метод в протоколе `DivReporter`:

```swift
func reportAction(context: DivActionHandlingContext)
```

### Новые возможности

- **Расширенный контекст**: Доступ к дополнительной информации о состоянии карточки и переменных
- **Публичная структура**: `DivActionHandlingContext` теперь доступна для кастомных реализаций
- **Обратная совместимость**: Старый метод `reportAction(cardId:info:)` продолжает работать

### Пример использования

```swift
class CustomReporter: DivReporter {
    func reportAction(context: DivActionHandlingContext) {
        // Доступ к расширенному контексту
        let cardId = context.cardId
        let info = context.info
        let resolver = context.expressionResolver
        
        // Ваша логика репортинга
        print("Action reported for card: \(cardId)")
    }
}
```

{% note info "Обратная совместимость" %}

Существующие реализации `DivReporter` продолжают работать без изменений благодаря реализации по умолчанию нового метода.

{% endnote %}

<!-- source: ru/_includes/index/troubleshooting.md -->
## Узнать больше {#troubleshooting}

Вы можете обсуждать интересующие вас темы в сообществе пользователей DivKit в Telegram: [https://t.me/divkit_community_ru](https://t.me/divkit_community_ru).



[Репозиторий DivKit](https://github.com/divkit/divkit)




<!-- endsource: ru/_includes/index/troubleshooting.md -->

