Mobil analitikada Screen View — bu nədir, hansı metrikalar və necə izlənilir

Müəllif: IT Sectr Dərc olunub: 2026-04-21 Oxuma vaxtı: 9 dəq

Screen View — tətbiqdə hər ekranın açılışını qeyd edən mobil analitika hadisəsidir. Bu, mobil interfeyslərin naviqasiya modelinə uyğunlaşdırılmış web üçün page_view analoqudur. Amplitude, 2024 məlumatlarına görə, Screen View tətbiq analitikasında ən çox rast gəlinən hadisədir və bütün göndərilən hadisələrin 40%-ə qədərini təşkil edir. Düzgün screen tracking tətbiqi istifadəçi yollarının və hunilərin təhlili üçün əsasdır.

Əsas məqamlar

  • Screen View — mobil tətbiqdə ekranın açılışını onun adı ilə qeyd edən hadisə.
  • Screen View vs Page View: mobil tətbiq URL-dən istifadə etmir — identifikasiya Activity, ViewController və ya rout adı ilə aparılır.
  • Avtomatik izləmə iOS-da NavigationObserver və Android-də NavigationController vasitəsilə həyata keçirilir.
  • Screen Name — hadisənin əsas parametri, kodu bilməyən analitik üçün başa düşülən olmalıdır.
  • Screen Flow — sessiya ərzində ekranların ardıcıllığı, hunilərin qurulması və imtina təhlili üçün əsas.

Screen View nədir?

Screen View — mobil tətbiq ekranı açıldıqda göndərilən analitika hadisəsidir. Hadisə ekran adını (screen_name), sinfi (screen_class) və vaxt möhürünü ehtiva edir. Veb analitikasından fərqli olaraq, page_view URL-ə bağlı olduğu halda, mobil tətbiqlərdə ekranlar Activity, Fragment, ViewController və ya Custom View adı ilə müəyyən edilir.

Screen View hadisəsinin strukturu

ParametrTipNümunə
screen_nameString„Product Details”
screen_classString„ProductDetailActivity”
previous_screenString„CatalogScreen”
timestampLong1719876543000
duration_secInt45

previous_screen parametri xüsusilə vacibdir: keçid ardıcıllığını bərpa etməyə və Screen Flow — tətbiqdə istifadəçi yollarının xəritəsini qurmağa imkan verir.

Screen View vs Page View: əsas fərqlər

Screen ViewPage View eyni vəzifəni — baxışın qeydiyyatını — lakin fərqli mühitlərdə həll edir. Vebdə URL səhifəni unikal şəkildə müəyyən edir və Page View sənədin yüklənməsinə bağlıdır. Mobil tətbiqlərdə ekran UI vəziyyətidir, mütləq ayrıca ünvana uyğun gəlmir.

  • Page View HTTP sorğusu və URL ilə bağlıdır — Screen View Activity/ViewController həyat dövrü hadisəsi ilə bağlıdır
  • Page View geri qayıtdıqda təkrarlanmır (keş istifadə olunur) — Screen View hər ekran açılışında yenidən göndərilir
  • Page View orta hesabla daha qısadır — istifadəçi veb səhifəni interaktiv elementləri olan mobil ekrandan daha sürətli nəzərdən keçirir

Digər bir fərq — kontekst dərinliyidir. Mobil tətbiqdə Screen View vəziyyət parametrlərini ehtiva edir: istifadəçinin daxil olub-olmaması, hansı məlumatların yükləndiyi, ekranın redaktə rejimində açılıb-açılmaması. Vebdə Page View nadir hallarda belə kontekst daşıyır — o, yalnız URL-in yüklənmə faktını qeyd edir. Bu, Screen View-i məhsul analitikası üçün daha informativ edir, çünki hər hadisə vəziyyətə görə seqmentləşdirilə bilər.

Screen View ilə işdə tipik səhvlər

Birinci səhv — ekran daxilində hər vəziyyət dəyişikliyində (tab dəyişmə, popup açma) screen_view göndərmək. Screen View yalnız tam yeni ekrana keçidi qeyd etməlidir, mikrointeraksiyaları deyil.

İkinci səhv — texniki sinif adını oxunaqlı ad əvəzinə istifadə etmək. „ProductDetailActivityKt” analitik üçün faydasızdır — screen_name-də „Product Details” istifadə edin.

Üçüncü səhv — müvafiq sahələr olmadan screen_view göndərmək. Boş screen_name qruplaşdırıla bilməyən zibil qeydlər yaradır. Həmişə heç olmasa screen_name və screen_class göndərin, hətta test ekranlarında belə.

Screen View necə izlənilir?

Screen View tracking-in tətbiqi naviqasiya arxitekturasından asılıdır. Jetpack Compose və SwiftUI nümunəsində avtomatik və əl ilə yanaşmaları nəzərdən keçirək.

Android: Jetpack Compose-da avtomatik izləmə

NavigationComponent səviyyəsində LifecycleEventObserver istifadə edin. İstifadəçi hər dəfə yeni rout-a keçdikdə screen_view hadisəsi işə düşür.

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-a qoşulma
fun NavBackStackEntry.trackScreenView(analytics: AnalyticsProvider) {
    lifecycle.addObserver(ScreenTrackingObserver(analytics))
}

Bu yanaşma, ekranın hər dəfə ön plana qayıdışında, o cümlədən fondan qayıtdıqda screen_view-in göndərilməsini təmin edir. Lifecycle.Event.ON_RESUME izləmə üçün düzgün andır, ON_START və ya ON_CREATE deyil.

iOS: SwiftUI-da avtomatik izləmə

SwiftUI-da hər View-ə daxil edilmiş onAppear modifieri istifadə olunur. Avtomatlaşdırma üçün ViewModifier yaradılır.

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))
    }
}

// İstifadə:
ProductDetailView()
    .trackScreen("Product Details")

trackScreen modifieri istənilən View-ə bir sətirlə əlavə olunur. Bu, SwiftUI layihələri üçün təmiz və miqyaslana bilən həlldir.

Çoxmodullu layihələrdə Screen View

Modul arxitekturası olan layihələrdə hər modul öz ekran adlandırmasından istifadə edə bilər ki, bu da screen_name-in təkrarlanmasına gətirib çıxarır. Mərkəzləşdirilmiş enum ScreenName problemi həll edir — bütün ekranlar bir yerdə vahid standarta uyğun adlandırılır. Yeni ekran əlavə etmək yalnız enum-da yeni sabit tələb edir, bütün kodu axtarmaq lazım deyil.

Screen_name-i funksiyalara görə qruplaşdırmaq üçün sealed class istifadə edin: ProfileScreen.CHANGE_PASSWORD, OrdersScreen.ORDER_HISTORY, CatalogScreen.SEARCH_RESULTS. Bu, analitika hesabatlarında filtrasiyanı asanlaşdırır.

Screen Flow: ekranlar arası keçid analitikası

Screen Flow (və ya Path Analysis) — istifadəçinin keçdiyi ekranlar ardıcıllığının vizuallaşdırılmasıdır. Bu, naviqasiyada dar boğazları müəyyən etmək üçün əsas vasitədir.

Screen Flow-un qurulması

previous_screen parametri olan hər Screen View qrafın kənarını yaradır: CatalogScreen → ProductDetails → CartScreen. Bütün keçidləri aqreqasiya edərək yollar xəritəsi qurulur. Screen Flow-a əsaslanan üç addımlı huni istifadəçilərin harada itdiyini göstərir.

  • Addım 1: HomeScreen → CatalogScreen (95% keçir)
  • Addım 2: CatalogScreen → ProductDetails (65% keçir — 35% itir)
  • Addım 3: ProductDetails → AddToCart (30% keçir — daha 35% itiririk)

Mixpanel (2024) məlumatlarına görə, Screen Flow analizi ayrı-ayrı hadisələrin təhlilində görünməyən UX problemlərinin 40%-ə qədərini aşkar edir. Məsələn, ProductDetails → HomeScreen tez-tez keçidi satınalma olmadan məhsulun qiyməti və ya təsviri ilə bağlı problemi göstərir.

Drop-off analizi

Drop-off — istifadəçinin ssenarini tərk etdiyi nöqtədir. Yükləmə ekranından sonra istifadəçilərin 60%-i ayrılırsa, problem yükləmə sürəti və ya animasiyadadır. Paywall-dan sonra — abunə qiyməti və ya dəyərində.

Firebase və BigQuery-də Screen Flow

Firebase hazır Screen Flow hesabatı təqdim etmir, lakin screen_view məlumatları BigQuery-də mövcuddur. Keçidləri (previous_screen, screen_name) cütlüyünə görə qruplaşdıran və tezliyi hesablayan sorğu qurun. Nəticə — Looker Studio-da Sankey diaqramı kimi vizuallaşdırıla bilən keçid matrisi.

Screen Flow-u seqmentasiya ilə tamamlayın: ayrıca yeni istifadəçilər (ilk 7 gün) və qayıdanlar üçün. Yeni istifadəçilər daha çox onbor dinq ekranlarında ilişib qalır, təcrübəlilər isə hədəf hərəkətlərə daha tez çatır. İki axının müqayisəsi adaptasiyanın dar boğazlarını aşkar edir.

Screen View analitikası üçün alətlər

Alətin seçimi büdcədən, texnoloji yığımdan və tələb olunan detallaşdırmadan asılıdır. Üç məşhur həlli nəzərdən keçirək.

Firebase Analytics (pulsuz)

Firebase hər hadisədə screen_view parametri vasitəsilə ekranları avtomatik izləyir. SDK inteqrasiyasından sonra əlavə kod tələb etmir. Məhdudiyyət: screen_name Activity/ViewController-dən yaradılır, bu da həmişə oxunaqlı adlar vermir.

Amplitude (peşəkar)

Amplitude daxili Pathfinder — vizual Screen Flow qurucusu təklif edir. User property və kohortlar üzrə seqmentasiyanı dəstəkləyir. Tətbiq kodunda dəyişiklik etmədən server tərəfində ekran adlarını dəyişməyə imkan verir.

Mixpanel (orta seqment)

Mixpanel real vaxtda Flows hesabatı təqdim edir. Xətti keçidləri deyil, həm də budaqlanmaları — konkret ekrandan sonra hansı ekranların ziyarət edildiyini göstərə bilir. iOS, Android, Flutter və React Native SDK ilə inteqrasiya olunur.

Screen View-in performansa təsiri

Hər screen_view hadisəsi şəbəkə məlumat ötürülməsidir. Tətbiq hər tab dəyişməsində (dəqiqədə 20+) screen_view göndərirsə, bu əlavə yük yaradır. Optimallaşdırma: screen_view-ləri buferləşdirin və hər 5 saniyədə batch ilə göndərin. Firebase hadisələri avtomatik aqreqasiya edir, lakin fərdi SDK-lar hər çağırışı dərhal göndərə bilər.

İzləmənin overhead-ini ölçün: hər screen_view-ə vaxt möhürü əlavə edin və onResume-dən göndərməyə qədər gecikməni hesablayın. Gecikmə 100 ms-dən çox olarsa, izləmə UX-ə təsir edir. Göndərmə üçün fon thread istifadə edin ki, UI thread-i bloklamasın. Aşağı seqment cihazlarda fərq nəzərə çarpır.

Tez-tez verilən suallar

TabLayout daxilində hər fragment üçün Screen View göndərmək lazımdırmı?

Bəli, öz məzmunu olan hər fragment ayrıca ekrandır. Üç tablı TabLayout dəyişmə zamanı üç fərqli screen_view göndərməlidir. İstisna: müstəqil naviqasiyası olmayan popup tablar.

screen_name screen_class-dan nə ilə fərqlənir?

screen_class — sinfin texniki adı (məs., „MainActivity”), tərtibatçılar tərəfindən istifadə olunur. screen_name — oxunaqlı ad („Əsas ekran”), hesabatlarda istifadə olunur. SDK tez-tez screen_class-ı avtomatik doldurur, screen_name əl ilə təyin edilməlidir.

Ekran fırlanması zamanı Screen View təkrarlanmasının qarşısını necə almaq olar?

Fırlanma zamanı cihaz Activity-ni yenidən yaradır, bu da təkrar screen_view-ə səbəb olur. Vəziyyət yoxlamasından istifadə edin: hadisəni yalnız ekran dəyişdikdə göndərin, hər ON_RESUME-də deyil. Firebase və Amplitude screen_view-ləri avtomatik deduplikasiya edir.

Bir istifadəçi üçün gündə neçə Screen View hadisəsi normaldır?

Orta tətbiq üçün — gündə bir istifadəçiyə 10–30 screen_view. Xəbər tətbiqləri: 15–20. Oyunlar: 20–40. Kommunal tətbiqlər: 5–10. Sayı 100-ü keçərsə, ekranların hər toxunuşa deyil, tam keçidə görə göndərildiyini yoxlayın.

Screen View A/B testlərinin təhlili üçün istifadə edilə bilərmi?

Bəli, screen_view A/B testlərində göstəricilərdən biridir. A və B variantları arasında ekran baxışlarının sayını müqayisə edin. Əgər B variantında „Checkout” ekranı 15% daha az screen_view alırsa, bu məhsul kartında problem olduğuna işarədir.

Nəticə

  • Screen View — mobil tətbiqdə ekranın açılışını qeyd edən əsas analitika hadisəsi.
  • Screen View vs Page View: mobil ekran URL ilə deyil, Activity/ViewController adı ilə müəyyən edilir.
  • Avtomatik izləmə LifecycleObserver (Android) və ya ViewModifier (iOS) vasitəsilə sənaye standartıdır.
  • Screen Flow — ekranlar arası keçid qrafı, UX problemlərinin 40%-ə qədərini aşkar edir.
  • Drop-off analizi screen_view əsasında istifadəçilərin hunidə dəqiq itmə yerlərini göstərir.
  • Firebase, Amplitude və Mixpanel Screen View analitikası üçün əsas alətlərdir.
  • Düzgün ekran adı (screen_name) oxunaqlı hesabatlar üçün məcburi şərtdir.

Açar təslim mobil tətbiq hazırlayacağıq

IT Sectr 2017-ci ildən startaplar və bizneslər üçün iOS və Android tətbiqləri yaradır. Sizə məsləhət verəcəyik və ən yaxşı həlli təklif edəcəyik.

Layihəni müzakirə et

Həm də oxuyun