Swift Package Manager — это инструмент для автоматизации распространения кода на Swift, встроенный непосредственно в компилятор.
После того как ваш Swift Package настроен, подключить MTAnalytics в качестве зависимости можно очень просто: достаточно добавить его в список dependencies в файле Package.swift или в раздел пакетов прямо в Xcode.
- Откройте меню File > Add Package Dependency.
- Укажите GitHub ссылку на SDK:
https://github.com/MobileTeleSystems/mts-analytics-ios-sdk
- Добавьте зависимость в Package.swift
.dependencies: [
.package(url: "https://github.com/MobileTeleSystems/mts-analytics-ios-sdk", from: "6.0.0")
],
- В секции targets подключите модуль SDK:
.target(
name: "YourLibrary",
dependencies: [
.product(name: "MTAnalytics", package: "mts-analytics-ios-sdk"),
]
),
- Чтобы добавить библиотеку MTAnalytics в проект, через CocoaPods добавьте в Podfile:
pod 'MTAnalytics', '~> 6.0.0'Теперь при установке MTAnalytics через Cocoapods, начиная с 5.3.0, необходимо указывать pod GRDB таким образом:
pod 'GRDB.swift', git: 'https://github.com/groue/GRDB.swift.git', tag: 'v6.29.3'
pod 'MTAnalytics', '~> 6.0.0'- Далее устанавливаем ссылку на библиотеку MTAnalytics в Podfile:
source 'https://github.com/MobileTeleSystems/mts-analytics-ios-sdk'- Сохраните Podfile и введите
pod installв Терминале для установки библиотеки. - Откройте проект в Xcode через
.xcworkspaceфайл.
- Сделайте импорт библиотеки:
import MTAnalytics- Инициализируйте библиотеку в методе application(_:didFinishLaunchingWithOptions:) вашего UIApplicationDelegate.
import MTAnalytics
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? = nil) -> Bool {
let configuration = MTAnalyticsConfiguration(flowId: "your-flow-id")
MTAnalyticsApp.configure(configuration)
return true
}Создайте новый Swift файл для AppDelegate и добавьте этот код:
import UIKit
import MTAnalytics
class AppDelegate: NSObject, UIApplicationDelegate {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? = nil) -> Bool {
let configuration = MTAnalyticsConfiguration(flowId: "your-flow-id")
MTAnalyticsApp.configure(configuration)
return true
}
}Затем в App подключите AppDelegate:
import SwiftUI
@main
struct YourAppNameApp: App {
// Подключаем AppDelegate через property wrapper
@UIApplicationDelegateAdaptor(AppDelegate.self) var appDelegate
var body: some Scene {
WindowGroup {
ContentView()
}
}
}Конфигурация SDK: На этом этапе вы настраиваете параметры работы SDK - длительность сессий, лимиты хранения событий, режим отправки данных в роуминге. Конфигурация задаётся через MTAnalyticsConfiguration. Подробная инструкция: Конфигурация
Отправка событий: Чтобы собирать аналитику пользовательских действий в приложении, настройте отправку событий SDK. События могут описывать клики, просмотры экранов, открытия функций. Подробности см.: Events
Подключение Crashlytics: MTAnalytics SDK поддерживает интеграцию с Crashlytics, чтобы отслеживать сбои и падения приложения. Это помогает выявлять критические ошибки и улучшать стабильность. Руководство по настройке: Crashlytics
Электронная коммерция: Для отслеживания покупок, просмотров товаров и корзины используйте событие E-commerce. Поддерживается логирование товарных событий (просмотр, добавление в корзину, оформление заказа). Это позволит строить воронки продаж и анализировать поведение пользователей на всех этапах. Подробности см.: Ecommerce
А/Б-тесты и Remote Config: Для экспериментов и персонализации интерфейса можно подключить А/Б-тесты и Remote Config. Это позволяет динамически изменять логику или внешний вид приложения без публикации в App Store. Подробности: A/B тесты
Отслеживание Deeplink: Если приложение открывается по ссылкам (deeplink или universal link), важно передавать эти данные в SDK. Это позволяет корректно учитывать источник установки и перехода. Подробная инструкция: Отслеживание Deeplink
Работа с Link Manager: Link Manager помогает управлять кастомными ссылками для маркетинга, кампаний и интеграций. Через него можно отслеживать переходы и связывать их с событиями в приложении. Подробная инструкция: Link Manager
Подробные инструкции по интеграции, включая установку, конфигурацию, тестирование и многое другое, вы можете найти в полной документации.
- Павел Богарт, [email protected]
- Анита Хасанова, [email protected]
- Леонид Перлин, [email protected]