React Native SDK'da onboarding olaylarını yönetin

Başlamadan önce şunları kontrol edin:

Onboarding builder ile yapılandırılan onboarding’ler, uygulamanızın yanıt verebileceği olaylar üretir. Bu olayları nasıl ele alacağınız, hangi sunum yaklaşımını kullandığınıza bağlıdır:

  • Modal sunum: Tüm onboarding görünümleri için olayları işleyen olay işleyicilerinin kurulmasını gerektirir
  • React bileşeni: Olayları doğrudan widget içindeki satır içi callback parametreleri aracılığıyla işler
  1. Adapty React Native SDK 3.8.0 veya daha yeni bir sürümünü yüklediniz.
  2. Bir onboarding oluşturdunuz.
  3. Onboarding’i bir placement’a eklediniz.

Mobil uygulamanızdaki onboarding ekranında gerçekleşen süreçleri kontrol etmek veya izlemek için olay işleyicilerini uygulayın:

Etkinlik türleri

Aşağıdaki bölümler, hangi sunum yaklaşımını kullandığınızdan bağımsız olarak işleyebileceğiniz farklı etkinlik türlerini açıklamaktadır.

Özel eylemleri yönetme

Builder’da bir butona özel eylem ekleyebilir ve ona bir ID atayabilirsiniz.

ios-events-1.webp

Ardından bu ID’yi kodunuzda kullanabilir ve özel bir eylem olarak işleyebilirsiniz. Örneğin, bir kullanıcı Login veya Allow notifications gibi özel bir butona dokunduğunda, olay işleyicisi Action ID parametresiyle tetiklenir ve bu parametre builder’daki Action ID ile eşleşir. “allowNotifications” gibi kendi ID’lerinizi oluşturabilirsiniz.

Olay örneği (Genişletmek için tıklayın)
{
  "actionId": "allow_notifications",
  "meta": {
    "onboardingId": "onboarding_123",
    "screenClientId": "profile_screen",
    "screenIndex": 0,
    "screensTotal": 3
  }
}

Onboarding yüklemesi tamamlandığında

Bir onboarding yüklemesi tamamlandığında şu olay tetiklenir:

Etkinlik örneği (Genişletmek için tıklayın)
{
    "meta": {
        "onboarding_id": "onboarding_123",
        "screen_cid": "welcome_screen",
        "screen_index": 0,
        "total_screens": 4
    }
}

Onboarding’i kapatma

Kullanıcı Close eylemine atanmış bir butona dokunduğunda onboarding kapatılmış sayılır.

ios-events-2.webp

Kullanıcı onboarding’i kapattığında ne olacağını yönetmeniz gerektiğini unutmayın. Örneğin, onboarding’in kendisini göstermeyi durdurmanız gerekir.

Etkinlik örneği (Genişletmek için tıklayın)
{
  "action_id": "close_button",
  "meta": {
    "onboarding_id": "onboarding_123",
    "screen_cid": "final_screen",
    "screen_index": 3,
    "total_screens": 4
  }
}

Paywall açma

Onboarding içinde bir paywall açmak istiyorsanız bu olayı işleyin. Paywall kapandıktan sonra açmak istiyorsanız daha kolay bir yol var: kapatma eylemini yakalayıp olay verisine gerek kalmadan paywall’ı açabilirsiniz.

Kullanıcı bir paywall açan düğmeye tıkladığında, manuel olarak ayarladığınız düğme eylem ID’sini alırsınız. Onboardinglerde paywall’larla çalışmanın en sorunsuz yolu, eylem ID’sini paywall placement ID’siyle aynı yapmaktır.

Etkinlik örneği (Genişletmek için tıklayın)
{
    "action_id": "premium_offer_1",
    "meta": {
        "onboarding_id": "onboarding_123",
        "screen_cid": "pricing_screen",
        "screen_index": 2,
        "total_screens": 4
    }
}

Navigasyonu İzleme

Onboarding akışı sırasında çeşitli navigasyonla ilgili olaylar gerçekleştiğinde bir analitik etkinliği alırsınız:

event nesnesi aşağıdaki türlerden biri olabilir:

TürAçıklama
onboardingStartedOnboarding yüklendiğinde
screenPresentedHerhangi bir ekran gösterildiğinde
screenCompletedBir ekran tamamlandığında. İsteğe bağlı elementId (tamamlanan öğenin tanımlayıcısı) ve isteğe bağlı reply (kullanıcının yanıtı) içerir. Kullanıcılar ekrandan çıkmak için herhangi bir işlem yaptığında tetiklenir.
secondScreenPresentedİkinci ekran gösterildiğinde
userEmailCollectedKullanıcının e-postası giriş alanı aracılığıyla toplandığında tetiklenir
onboardingCompletedKullanıcı final ID’sine sahip bir ekrana ulaştığında tetiklenir. Bu olaya ihtiyaç duyuyorsanız son ekrana final ID’sini atayın.
unknownTanınmayan olay türleri için. name (bilinmeyen olayın adı) ve meta (ek meta veriler) içerir
Her etkinlik, aşağıdakileri içeren meta bilgilerini barındırır:
AlanAçıklama
onboardingIdOnboarding akışının benzersiz tanımlayıcısı
screenClientIdMevcut ekranın tanımlayıcısı
screenIndexMevcut ekranın akıştaki konumu
screensTotalAkıştaki toplam ekran sayısı
Etkinlik örnekleri (Genişletmek için tıklayın)
// onboardingStarted
{
  "name": "onboarding_started",
  "meta": {
    "onboarding_id": "onboarding_123",
    "screen_cid": "welcome_screen",
    "screen_index": 0,
    "total_screens": 4
  }
}

// screenPresented
{
    "name": "screen_presented",
    "meta": {
        "onboarding_id": "onboarding_123",
        "screen_cid": "interests_screen",
        "screen_index": 2,
        "total_screens": 4
    }
}

// screenCompleted
{
    "name": "screen_completed",
    "meta": {
        "onboarding_id": "onboarding_123",
        "screen_cid": "profile_screen",
        "screen_index": 1,
        "total_screens": 4
    },
    "params": {
        "element_id": "profile_form",
        "reply": "success"
    }
}

// secondScreenPresented
{
    "name": "second_screen_presented",
    "meta": {
        "onboarding_id": "onboarding_123",
        "screen_cid": "profile_screen",
        "screen_index": 1,
        "total_screens": 4
    }
}

// userEmailCollected
{
    "name": "user_email_collected",
    "meta": {
        "onboarding_id": "onboarding_123",
        "screen_cid": "profile_screen",
        "screen_index": 1,
        "total_screens": 4
    }
}

// onboardingCompleted
{
    "name": "onboarding_completed",
    "meta": {
        "onboarding_id": "onboarding_123",
        "screen_cid": "final_screen",
        "screen_index": 3,
        "total_screens": 4
    }
}