Типовий біль: користувач скаржиться на баг, але ви не можете його відтворити. Сесійний запис вирішує цю проблему — ви буквально бачите, що робив користувач. Однак без правильної інтеграції запис або нічого не покаже, або зіллє чутливі дані. Ми підключаємо Smartlook до мобільного додатку за 4–8 годин, з урахуванням усіх вимог безпеки та аналітики. За понад 5 років роботи з мобільною аналітикою ми виконали більше 20 проектів з інтеграції сесійного запису. Наш досвід — ваша гарантія відсутності витоків та швидкого старту. Замовте аудит — оцінимо проект і запропонуємо оптимальний план.
Як інтеграція Smartlook вирішує проблему витоку даних?
Smartlook за замовчуванням записує весь екран. Якщо не налаштувати маскування, до сесії потраплять номери карток, CVV, паролі. Ми налаштовуємо маскування на рівні View та UIViewController (iOS) і через атрибути XML або програмно (Android). У режимі wire-frame UI-елементи відображаються схематично, текст не розпізнається — безпечно для продакшену. Це гарантує відповідність стандартам безпеки, таким як GDPR та PCI DSS. У нашому проекті для фінтех-стартапу ми закрили 12 екранів за 2 години — жоден чутливий рядок не потрапив у запис. Smartlook SDK documentation.
Чому варто обрати автоматичний трекінг подій?
Автоматичний трекінг створює події для всіх інтерактивних елементів, але в дашборді вони мають нечитабельний ідентифікатор на кшталт UIButton@(123,456). Ми присвоюємо кожному ключовому елементу кастомний slTrackId (iOS) або SmartlookHint (Android). Після цього у воронках та фільтрах ви бачите purchase_button_pdp, а не координати. Це прискорює запуск аналітики в 3 рази порівняно з ручним розмічуванням подій. Наприклад, в інтернет-магазині ми розмітили 50 кнопок за 1 день — раніше на це йшло 3 дні. Автоматичний трекінг з кастомними іменами в 3 рази кращий за ручне розмічування.
Як знизити надлишковий трафік та вартість?
Smartlook тарифікується за кількістю записаних сесій. Якщо записувати 100% сесій, бюджет полетить у космос. Ми налаштовуємо семплінг — 25% для випадкових користувачів, 100% для преміум-сегменту. Це можна зробити як на старті SDK, так і динамічно за умовою. Семплінг дозволяє скоротити витрати на запис до 80%. Для великого додатку з 1 млн користувачів на місяць різниця між 100% та 25% запису — економія в 4 рази. Wire-frame режим кращий за screenshot: споживає в 2 рази менше трафіку, зберігаючи при цьому структуру екрану.
Деталі налаштування семплінгу
Семплінг налаштовується через умову запуску SDK. Приклад: записувати лише преміум-користувачів (100%) та 20% інших. Це дає до 80% економії без втрати критичних даних. Параметри семплінгу:
- Випадковий відсоток: від 1% до 100%.
- За властивостями користувача: план, регіон, дата реєстрації.
- Динамічна зміна без оновлення додатку.
Як ми підключаємо Smartlook
Використовуємо останню версію SDK: для iOS — Swift 5.9+ через Swift Package Manager, для Android — Kotlin з Gradle. Все в одному блоці:
// iOS — інтеграція // Swift Package Manager: .package(url: "https://github.com/smartlook/smartlook-ios-sdk", from: "2.0.0") import Smartlook @main struct MyApp: App { init() { Smartlook.setup(key: "YOUR_API_KEY") Smartlook.start() } var body: some Scene { WindowGroup { ContentView() } } } // Налаштування рендерингу та автотрекінг let config = Smartlook.SetupConfiguration(key: "YOUR_API_KEY") config.renderingMode = .native // wire-frame для конфіденційності Smartlook.setEventTrackingMode(.fullTracking) Smartlook.setup(configuration: config) // Маскування view view.slSensitive = true // Ім'я елемента purchaseButton.slTrackId = "purchase_button_pdp" // Кастомні події та властивості користувача Smartlook.trackCustomEvent(name: "checkout", props: ["step": "payment"]) Smartlook.setUserIdentifier("user_123", sessionProperties: ["plan":"premium"]) // Android — інтеграція // build.gradle: implementation("com.smartlook.recording:app:2.+") Smartlook.setupAndStartRecording("YOUR_API_KEY") // Маскування через XML <EditText android:id="@+id/cvvField" app:smartlook_sensitive="true" /> // Ім'я елемента SmartlookHint.setViewId(binding.purchaseButton, "purchase_button_pdp") // Кастомні події Smartlook.trackCustomEvent("checkout", mapOf("step" to "payment")) Код для семплінгу:
// Семплінг — запис за умовою if user.isPremium { Smartlook.start() } else { if Int.random(in: 0..<5) == 0 { Smartlook.start() } // 20% } Порівняння режимів рендерингу
| Режим | Опис | Споживання трафіку | Конфіденційність |
|---|---|---|---|
| Screenshot | Повний скріншот екрану | Високе | Немає маскування |
| Wire-frame | Схематичне відображення | Середнє | Не зберігає текст |
| No rendering | Тільки події, без відео | Мінімальне | Повна |
Wire-frame режим споживає в 2 рази менше трафіку, ніж screenshot.
Типи автоматичних подій Smartlook
| Подія | Коли спрацьовує |
|---|---|
| click | Натискання на інтерактивний елемент |
| input | Взаємодія з текстовим полем |
| focus | Фокус на полі |
| scroll | Скрол списку |
Як налаштувати маскування даних?
Детальна інструкція:
- Визначте чутливі екрани: платіжні форми, введення особистих даних.
- Для iOS: присвойте кожному захищуваному View властивість
slSensitive = true, або використовуйтеSmartlook.setViewIsSensitive(view, isSensitive: true)для UIViewController. - Для Android: додайте атрибут
app:smartlook_sensitive="true"у XML або викличтеSmartlook.registerSensitiveView(view)програмно. - Перевірте в тестовій сесії, що поля приховані.
Чому ми наполягаємо на автоматичному трекінгу
Smartlook аналізує жести та взаємодії без жодного рядка коду. Вам не потрібно розмічати кожен UI-елемент — події створюються автоматично. Якщо потрібна точність, присвойте імена ключовим елементам. Це прискорює запуск аналітики в рази. Крім того, Smartlook API дозволяє інтегрувати теплові карти та воронки для глибокої сесійної аналітики.
Що входить у роботу (deliverables)
- Вихідний код інтеграції з коментарями на GitHub.
- Документація з маскування та кастомних подій.
- Налаштовані воронки та дашборди в Smartlook.
- Навчання команди роботі з сесіями (1 година).
- Підтримка після деплою — 2 тижні.
Напишіть нам для консультації — зв'яжіться з нами для аудиту проекту. Замовте зараз, і команда експертів візьметься за справу.
Процес роботи
- Аналітика — розбираємо поточну схему подій та виявляємо «темні зони».
- Проектування — визначаємо, які екрани маскувати, які елементи іменувати, який відсоток сесій записувати.
- Інтеграція — встановлюємо SDK, налаштовуємо параметри, пишемо кастомні події.
- Тестування — перевіряємо маскування, коректність подій, роботу семплінгу.
- Деплой в App Store / Google Play — вивантажуємо нову збірку, відстежуємо перші сесії.
Строки
Базова інтеграція — 4–8 годин. Якщо потрібна глибока розмітка, кастомні події та воронки — 1–2 дні. Точна оцінка розраховується індивідуально після аудиту поточного проекту.







