iOS SDK: обзор и быстрый старт

Gravity Field SDK передаёт просмотры экранов и события, получает персонализированный контент и показывает кампании в приложении. Выбор кампаний и A/B-вариантов выполняет сервер; приложение отвечает за навигацию и может рисовать контент самостоятельно.

Руководство сверено 2 октября 2026 года с публичным кодом iOS SDK 1.0.6, ветка main, коммит 645ca44. Минимальные требования пакета: iOS 14, Swift 5.9. После тега 1.0.6 в main также исправлены отступы GravityText.

Репозиторий SDK · История изменений

Задача Раздел
Настроить SDK, callback и разрешения Конфигурация
Связать пользователя между каналами Идентификация
Передавать контекст и события Контекст и события
Показать кампанию или рекомендации Кампании и рекомендации
Рисовать контент самостоятельно Свой UI и Custom JSON
Проверить варианты интерфейса A/B через JSON
Менять структуру виджета с сервера Backend-Driven UI

Установка

SDK подключается через Swift Package Manager.

Минимальная версия платформы: iOS 14.

  1. В Xcode откройте File -> Add Package Dependencies....
  2. Укажите https://github.com/Gravity-Field/gravity-sdk-ios.git и выберите версию 1.0.6.
  3. Выберите продукт GravitySDK и добавьте его в target приложения.
  4. Импортируйте SDK в коде:
import GravitySDK

Минимальное приложение

  1. Получите apiKey и section вашего проекта.
  2. Опубликуйте inline-кампанию с selector product_recommendations и контекстом товара: PRODUCT, SKU sku-123, location app://product/sku-123.
  3. Для проверки автопоказа опубликуйте in-app кампанию по просмотру этого экрана или событию add-to-cart-v1.
  4. Скопируйте quick_start.swift в SwiftUI-проект, заменив файл с @main, ключ и секцию. Если ваш фид содержит другой SKU, замените его в кампании и примере.
  5. Запустите приложение. Просмотр отправляется при появлении экрана, кнопка отправляет событие добавления в корзину, inline-блок показывает рекомендации. В реальном приложении событие отправляйте после успешного изменения корзины.

В примере есть минимальный ProductViewBuilder без дополнительных библиотек. Навигацию по deeplink и открытие товара подключите к роутеру приложения. Полная сборка примера требует Xcode с iOS SDK. Для встраивания в существующий проект используйте Конфигурацию и Кампании и рекомендации. Настройка форматов и сценариев в кабинете: Кампании в приложении.

PageContext

Поля контекста, SKU, категории и регион описаны в Контексте и событиях.

Логирование SDK

Уровни логирования, debug-диагностика и телеметрия ошибок описаны в Конфигурации.

Блокировка показа in-app кампаний

Presentation lock и её ограничения.

Вызов SDK до GravitySDK.initialize()

Порядок инициализации и диагностика ранних вызовов.

Следующие шаги