Mobil analitikada Screen View — bu nima, qanday metrikalar va qanday kuzatish

Muallif: IT Sectr Nashr etilgan: 2026-04-21 O'qish vaqti: 9 daq

Screen View — ilovadagi har bir ekranning ochilishini qayd etuvchi mobil analitika hodisasi. Bu mobil interfeyslarning navigatsiya modeliga moslashtirilgan web uchun page_view analogidir. Amplitude, 2024 ma'lumotlariga ko'ra, Screen View ilovalar analitikasidagi eng keng tarqalgan hodisa bo'lib, barcha yuborilgan hodisalarning 40% gacha qismini tashkil qiladi. Screen tracking ning to'g'ri joriy etilishi foydalanuvchi yo'llari va voronkalarini tahlil qilish uchun asosdir.

Asosiy

  • Screen View — mobil ilovada ekran ochilishini uning nomi bilan qayd etuvchi hodisa.
  • Screen View vs Page View: mobil ilova URL dan foydalanmaydi — identifikatsiya Activity, ViewController yoki rout nomi bo'yicha amalga oshiriladi.
  • Avtomatik kuzatish iOS da NavigationObserver va Android da NavigationController orqali amalga oshiriladi.
  • Screen Name — hodisaning asosiy parametri, kodni bilmagan analitik uchun tushunarli bo'lishi kerak.
  • Screen Flow — sessiya davomidagi ekranlar ketma-ketligi, voronkalarni qurish va chiqishlarni tahlil qilish uchun asos.

Screen View nima?

Screen View — mobil ilova ekrani ochilganda yuboriladigan analitika hodisasi. Hodisa ekran nomi (screen_name), sinf (screen_class) va vaqt tamg'asini o'z ichiga oladi. Veb analitikasidan farqli o'laroq, page_view URL ga bog'langan bo'lsa, mobil ilovalarda ekranlar Activity, Fragment, ViewController yoki Custom View nomi bilan aniqlanadi.

Screen View hodisasining tuzilishi

ParametrTurMisol
screen_nameString„Product Details”
screen_classString„ProductDetailActivity”
previous_screenString„CatalogScreen”
timestampLong1719876543000
duration_secInt45

previous_screen parametri ayniqsa muhim: o'tishlar ketma-ketligini tiklash va Screen Flow — ilovadagi foydalanuvchi yo'llari xaritasini qurish imkonini beradi.

Screen View vs Page View: asosiy farqlar

Screen View va Page View bir vazifani — ko'rishni qayd etishni — lekin turli muhitlarda hal qiladi. Vebda URL sahifani yagona tarzda aniqlaydi va Page View hujjatning yuklanishiga bog'liq. Mobil ilovalarda ekran UI holati bo'lib, u albatta alohida manzilga mos kelmaydi.

  • Page View HTTP so'rovi va URL ga bog'liq — Screen View Activity/ViewController hayotiy tsikli hodisasiga bog'liq
  • Page View orqaga qaytganda takrorlanmaydi (kesh ishlatiladi) — Screen View har bir ekran ochilishida qayta yuboriladi
  • Page View o'rtacha qisqaroq — foydalanuvchi veb sahifani interaktiv elementlarga ega mobil ekrandan tezroq ko'rib chiqadi

Yana bir farq — kontekst chuqurligi. Mobil ilovadagi Screen View holat parametrlarini o'z ichiga oladi: foydalanuvchi tizimga kirganmi, qanday ma'lumotlar yuklangan, ekran tahrirlash rejimida ochilganmi. Vebdagi Page View kamdan-kam bunday kontekstga ega — u faqat URL yuklanish faktini qayd etadi. Bu Screen View ni mahsulot analitikasi uchun yanada informativ qiladi, chunki har bir hodisani holat bo'yicha segmentlash mumkin.

Screen View bilan ishlashda odatiy xatolar

Birinchi xato — ekran ichidagi har bir holat o'zgarishida (tab almashtirish, popup ochish) screen_view yuborish. Screen View faqat yangi ekranga to'liq o'tishni qayd etishi kerak, mikrointeraksiyalarni emas.

Ikkinchi xato — texnik sinf nomini o'qiladigan nom o'rniga ishlatish. „ProductDetailActivityKt” analitik uchun foydasiz — screen_name da „Product Details” dan foydalaning.

Uchinchi xato — tegishli maydonlarsiz screen_view yuborish. Bo'sh screen_name guruhlab bo'lmaydigan axlat yozuvlar to'plamini yaratadi. Har doim hech bo'lmaganda screen_name va screen_class ni yuboring, hatto test ekranlarida ham.

Screen View ni qanday kuzatish?

Screen View tracking ni joriy etish navigatsiya arxitekturasiga bog'liq. Jetpack Compose va SwiftUI misolida avtomatik va qo'lda yondashuvlarni ko'rib chiqaylik.

Android: Jetpack Compose da avtomatik kuzatish

NavigationComponent darajasida LifecycleEventObserver dan foydalaning. Foydalanuvchi har safar yangi routga o'tganda screen_view hodisasi ishga tushadi.

kotlin
class ScreenTrackingObserver(
    private val analytics: AnalyticsProvider
) : LifecycleEventObserver {

    override fun onStateChanged(
        source: LifecycleOwner,
        event: Lifecycle.Event
    ) {
        if (event == Lifecycle.Event.ON_RESUME) {
            val route = source.getRouteFromLifecycleOwner()
            analytics.logScreenView(
                screenName = route.screenName,
                screenClass = source.getLocalClassName()
            )
        }
    }
}

// NavHost ga ulanish
fun NavBackStackEntry.trackScreenView(analytics: AnalyticsProvider) {
    lifecycle.addObserver(ScreenTrackingObserver(analytics))
}

Bu yondashuv screen_view ning ekran har safar oldingi planga qaytganda, shu jumladan fondan qaytganda yuborilishini kafolatlaydi. Lifecycle.Event.ON_RESUME kuzatish uchun to'g'ri moment, ON_START yoki ON_CREATE emas.

iOS: SwiftUI da avtomatik kuzatish

SwiftUI da har bir View ga o'rnatilgan onAppear modifikatoridan foydalaniladi. Avtomatlashtirish uchun ViewModifier yaratiladi.

swift
struct ScreenTrackingModifier: ViewModifier {

    let screenName: String

    func body(content: Content) -> some View {
        content.onAppear {
            Analytics.shared().logScreenView(
                name: screenName,
                className: "\(Self.self)"
            )
        }
    }
}

extension View {
    func trackScreen(_ name: String) -> some View {
        modifier(ScreenTrackingModifier(screenName: name))
    }
}

// Foydalanish:
ProductDetailView()
    .trackScreen("Product Details")

trackScreen modifikatori istalgan View ga bir qator bilan qo'shiladi. Bu SwiftUI loyihalari uchun toza va masshtablanuvchi yechimdir.

Ko'p modulli loyihalarda Screen View

Modulli arxitekturaga ega loyihalarda har bir modul o'z ekran nomlash tizimidan foydalanishi mumkin, bu esa screen_name ning takrorlanishiga olib keladi. Markazlashtirilgan enum ScreenName muammoni hal qiladi — barcha ekranlar bir joyda yagona standart bo'yicha nomlanadi. Yangi ekran qo'shish faqat enum da yangi doimiy talab qiladi, butun kodni qidirish shart emas.

Screen_name ni funksiyalarga ko'ra guruhlash uchun sealed class dan foydalaning: ProfileScreen.CHANGE_PASSWORD, OrdersScreen.ORDER_HISTORY, CatalogScreen.SEARCH_RESULTS. Bu analitika hisobotlarida filtrlashni soddalashtiradi.

Screen Flow: ekranlararo o'tish analitikasi

Screen Flow (yoki Path Analysis) — foydalanuvchi o'tadigan ekranlar ketma-ketligining vizualizatsiyasi. Bu navigatsiyadagi tor bo'yinlarni aniqlash uchun asosiy vositadir.

Screen Flow ni qurish

previous_screen parametriga ega har bir Screen View grafik qirrasini yaratadi: CatalogScreen → ProductDetails → CartScreen. Barcha o'tishlarni agregatsiya qilib, yo'llar xaritasi quriladi. Screen Flow ga asoslangan uch bosqichli voronka foydalanuvchilarning qayerda ketishini ko'rsatadi.

  • 1-qadam: HomeScreen → CatalogScreen (95% o'tadi)
  • 2-qadam: CatalogScreen → ProductDetails (65% o'tadi — 35% ketadi)
  • 3-qadam: ProductDetails → AddToCart (30% o'tadi — yana 35% yo'qotamiz)

Mixpanel (2024) ma'lumotlariga ko'ra, Screen Flow tahlili alohida hodisalar tahlilida ko'rinmaydigan UX muammolarining 40% gacha qismini aniqlaydi. Masalan, ProductDetails → HomeScreen tez-tez o'tish xarid qilmasdan mahsulot narxi yoki tavsifi bilan bog'liq muammoni ko'rsatadi.

Drop-off tahlili

Drop-off — foydalanuvchi stsenariyni tark etadigan nuqta. Agar yuklash ekranidan keyin foydalanuvchilarning 60% ketsa, muammo yuklash tezligi yoki animatsiyada. Agar Paywall dan keyin — obuna narxi yoki qiymatida.

Firebase va BigQuery da Screen Flow

Firebase tayyor Screen Flow hisobotini taqdim etmaydi, ammo screen_view ma'lumotlari BigQuery da mavjud. O'tishlarni (previous_screen, screen_name) juftligi bo'yicha guruhlaydigan va chastotani hisoblaydigan so'rov yarating. Natija — Looker Studio da Sankey diagrammasi sifatida vizualizatsiya qilinishi mumkin bo'lgan o'tish matritsasi.

Screen Flow ni segmentatsiya bilan to'ldiring: alohida yangi foydalanuvchilar (birinchi 7 kun) va qaytganlar uchun. Yangi foydalanuvchilar ko'pincha onboardin ekranlarida qotib qoladi, tajribalilar maqsadli harakatlarga tezroq yetib boradi. Ikki oqimni taqqoslash adaptatsiyaning tor bo'yinlarini aniqlaydi.

Screen View analitikasi uchun vositalar

Vositani tanlash byudjet, texnologik stack va talab qilinadigan detallashtirishga bog'liq. Uchta mashhur yechimni ko'rib chiqaylik.

Firebase Analytics (bepul)

Firebase har bir hodisadagi screen_view parametri orqali ekranlarni avtomatik kuzatadi. SDK integratsiyasidan keyin qo'shimcha kod talab qilmaydi. Cheklov: screen_name Activity/ViewController dan yaratiladi, bu har doim ham o'qiladigan nomlarni bermaydi.

Amplitude (professional)

Amplitude o'rnatilgan Pathfinder — vizual Screen Flow quruvchisini taklif qiladi. User property va kogortlar bo'yicha segmentatsiyani qo'llab-quvvatlaydi. Ilova kodida o'zgarishlarsiz server tomonida ekran nomlarini o'zgartirish imkonini beradi.

Mixpanel (o'rta segment)

Mixpanel real vaqtda Flows hisobotini taqdim etadi. Faqat chiziqli o'tishlarni emas, balki tarmoqlanishlarni ham ko'rsata oladi — qaysi ekranlar ma'lum bir ekrandan keyin tashrif buyuriladi. iOS, Android, Flutter va React Native SDK bilan integratsiyalanadi.

Screen View ning unumdorlikka ta'siri

Har bir screen_view hodisasi tarmoq ma'lumotlarini yuborishdir. Agar ilova har bir tab almashtirishda (daqiqada 20+) screen_view yuborsa, bu qo'shimcha yuk hosil qiladi. Optimallashtirish: screen_view larni buferlang va har 5 soniyada batch bilan yuboring. Firebase hodisalarni avtomatik agregatsiya qiladi, ammo maxsus SDK lar har bir chaqiruvni darhol yuborishi mumkin.

Kuzatishning overhead ini o'lchang: har bir screen_view ga vaqt tamg'asi qo'shing va onResume dan yuborishgacha kechikishni hisoblang. Agar kechikish 100 ms dan oshsa, kuzatish UX ga ta'sir qiladi. Yuborish uchun fon thread dan foydalaning, UI thread ni bloklamaslik uchun. Past segment qurilmalarda farq sezilarli.

Ko'p beriladigan savollar

TabLayout ichidagi har bir fragment uchun Screen View yuborish kerakmi?

Ha, o'z mazmuniga ega har bir fragment alohida ekrandir. Uch tabli TabLayout almashtirishda uch xil screen_view yuborishi kerak. Istisno: mustaqil navigatsiyaga ega bo'lmagan popup tablar.

screen_name screen_class dan nima bilan farq qiladi?

screen_class — sinfning texnik nomi (masalan, „MainActivity”), dasturchilar tomonidan ishlatiladi. screen_name — o'qiladigan nom („Bosh ekran”), hisobotlarda ishlatiladi. SDK ko'pincha screen_class ni avtomatik to'ldiradi, screen_name ni qo'lda o'rnatish kerak.

Ekran aylantirilganda Screen View takrorlanishining oldini olish?

Aylantirishda qurilma Activity ni qayta yaratadi, bu takroriy screen_view ga sabab bo'ladi. Holat tekshiruvidan foydalaning: hodisani faqat ekran o'zgarganda yuboring, har bir ON_RESUME da emas. Firebase va Amplitude screen_view larni avtomatik deduplikatsiya qiladi.

Bir foydalanuvchi uchun kuniga nechta Screen View hodisasi normal?

O'rtacha ilova uchun — kuniga bir foydalanuvchiga 10–30 screen_view. Yangilik ilovalari: 15–20. O'yinlar: 20–40. Utilitalar: 5–10. Agar son 100 dan oshsa, ekranlarning har bir teginishda emas, to'liq o'tishda yuborilishini tekshiring.

Screen View A/B testlarini tahlil qilish uchun ishlatilishi mumkinmi?

Ha, screen_view A/B testlaridagi ko'rsatkichlardan biridir. A va B variantlari orasidagi ekran ko'rishlar sonini solishtiring. Agar B variantida „Checkout” ekrani 15% kam screen_view olsa, bu mahsulot kartasida muammo borligidan dalolat beradi.

Xulosa

  • Screen View — mobil ilovada ekran ochilishini qayd etuvchi asosiy analitika hodisasi.
  • Screen View vs Page View: mobil ekran URL bilan emas, Activity/ViewController nomi bilan aniqlanadi.
  • Avtomatik kuzatish LifecycleObserver (Android) yoki ViewModifier (iOS) orqali sanoat standartidir.
  • Screen Flow — ekranlararo o'tish grafi, UX muammolarining 40% gacha qismini aniqlaydi.
  • Drop-off tahlili screen_view asosida foydalanuvchilarning voronkadagi aniq ketish joylarini ko'rsatadi.
  • Firebase, Amplitude va Mixpanel Screen View analitikasi uchun asosiy vositalardir.
  • To'g'ri ekran nomi (screen_name) o'qiladigan hisobotlar uchun majburiy shartdir.

Biz kalit topshirig'i bilan mobil ilovani ishlab chiqamiz

IT Sectr 2017-yildan beri startaplar va korxonalar uchun iOS va Android ilovalarini yaratadi. Biz sizga maslahat beramiz va eng yaxshi yechimni taklif qilamiz.

Loyihani muhokama qilish

Shuningdek o'qing