Android SDK'da onboarding alma

Adapty Kontrol Paneli’ndeki builder ile onboarding’inizin görsel kısmını tasarladıktan sonra Android uygulamanızda gösterebilirsiniz. Bu sürecin ilk adımı, aşağıda açıklandığı gibi placement ile ilişkili onboarding’i ve görünüm yapılandırmasını almaktır.

Başlamadan önce şunları kontrol edin:

  1. Adapty Android SDK sürüm 3.8.0 veya üzerini yüklediğinizden emin olun.
  2. Bir onboarding oluşturduğunuzdan emin olun.
  3. Onboarding’i bir placement’a eklediğinizden emin olun.

Onboarding’i çekme

Kodsuz builder’ımızla bir onboarding oluşturduğunuzda, bu onboarding uygulamanızın çekip göstermesi gereken bir yapılandırma içeren container olarak saklanır. Bu container tüm deneyimi yönetir — hangi içeriğin görüneceğini, nasıl sunulacağını ve kullanıcı etkileşimlerinin (quiz yanıtları veya form girişleri gibi) nasıl işleneceğini belirler. Container ayrıca analitik olaylarını otomatik olarak takip eder, dolayısıyla ayrıca görüntüleme takibi eklemeniz gerekmez.

En iyi performans için, kullanıcılara göstermeden önce görsellerin yüklenmesine yeterli zaman tanımak amacıyla onboarding yapılandırmasını erken aşamada çekin.

Onboarding almak için getOnboarding metodunu kullanın:

Adapty.getOnboarding("YOUR_PLACEMENT_ID") { result ->
    when (result) {
        is AdaptyResult.Success -> {
            val onboarding = result.value
            // the requested onboarding
        }
        is AdaptyResult.Error -> {
            val error = result.error
            // handle the error
        }
    }
}

Parametreler:

ParametreZorunlulukAçıklama
placementIdzorunluİstenen Placement’ın tanımlayıcısı. Bu, Adapty Kontrol Paneli’nde placement oluştururken belirttiğiniz değerdir.
locale

isteğe bağlı

varsayılan: en

Onboarding yerelleştirmesinin tanımlayıcısı. Bu parametrenin, eksi (-) karakteriyle ayrılmış bir veya iki alt etiketten oluşan bir dil kodu olması beklenir. İlk alt etiket dil için, ikincisi bölge içindir.

Örnek: en İngilizce anlamına gelir, pt-br Brezilya Portekizcesini temsil eder.

Yerel ayar kodları ve bunların nasıl kullanılmasını önerdiğimiz hakkında daha fazla bilgi için Yerelleştirmeler ve yerel ayar kodları sayfasına bakın.

fetchPolicyvarsayılan: .reloadRevalidatingCacheData

SDK varsayılan olarak sunucudan veri yüklemeye çalışır; başarısız olursa önbelleğe alınmış verileri döndürür. Kullanıcılarınızın her zaman en güncel verilere ulaşmasını sağladığından bu seçeneği öneriyoruz.

Ancak kullanıcılarınızın kararsız internet bağlantısıyla karşılaştığını düşünüyorsanız, önbellekte veri varsa bunu döndürmek için .returnCacheDataElseLoad kullanmayı değerlendirin. Bu senaryoda kullanıcılar en güncel veriye her zaman ulaşamayabilir, ama internet bağlantısı ne kadar zayıf olursa olsun daha hızlı yükleme süreleriyle karşılaşırlar. Önbellek düzenli olarak güncellenir, bu nedenle ağ isteklerinden kaçınmak için oturum boyunca kullanmak güvenlidir.

Önbelleğin uygulama yeniden başlatıldığında bozulmadığını, yalnızca uygulama yeniden yüklendiğinde veya manuel temizlik yapıldığında silindiğini unutmayın.

Adapty SDK onboarding’leri yerel olarak iki katmanda saklar: yukarıda açıklanan düzenli güncellenen önbellek ve yedek onboarding’ler. Onboarding’leri daha hızlı çekmek için CDN, CDN’e erişilemeyen durumlarda ise bağımsız bir yedek sunucu kullanıyoruz. Bu sistem, internet bağlantısının yetersiz olduğu durumlarda bile güvenilirliği sağlarken onboarding’lerinizin her zaman en güncel sürümünü almanızı sağlamak için tasarlanmıştır.

loadTimeoutvarsayılan: 5 sn

Bu değer, metodun zaman aşımını sınırlar. Zaman aşımına ulaşılırsa önbelleğe alınmış veriler veya yerel yedek döndürülür.

Nadiren bu metodun loadTimeout’ta belirtilenden biraz daha geç zaman aşımına uğrayabileceğini unutmayın; çünkü işlem arka planda farklı isteklerden oluşabilir.

Android için: TimeInterval’ı uzantı fonksiyonlarıyla oluşturabilirsiniz (örneğin 5.seconds, burada .seconds import com.adapty.utils.seconds’dan gelir) ya da TimeInterval.seconds(5) kullanabilirsiniz. Sınır koymamak için TimeInterval.INFINITE kullanın.

Yanıt parametreleri:

ParametreAçıklama
OnboardingOnboarding tanımlayıcısı ve yapılandırması, remote config ve diğer çeşitli özellikleri içeren bir AdaptyOnboarding nesnesi.

Varsayılan kitle onboarding’i ile onboarding çekmeyi hızlandırma

Onboarding’ler genellikle neredeyse anında çekilir, dolayısıyla bu süreci hızlandırma konusunda endişelenmenize gerek yoktur. Ancak çok sayıda kitle ve onboarding’iniz olduğunda ve kullanıcılarınızın internet bağlantısı zayıf olduğunda, onboarding’i çekmek istediğinizden daha uzun sürebilir. Bu gibi durumlarda, hiç onboarding göstermemek yerine sorunsuz bir kullanıcı deneyimi sağlamak için varsayılan bir onboarding görüntülemek isteyebilirsiniz.

Bunu çözmek için, belirtilen placement’ın All Users kitlesi için onboarding’i çeken getOnboardingForDefaultAudience metodunu kullanabilirsiniz. Ancak önerilen yaklaşımın, yukarıdaki Onboarding’i Çekme bölümünde açıklandığı gibi getOnboarding metodu ile onboarding çekmek olduğunu unutmamak önemlidir.

getOnboardingForDefaultAudience yerine getOnboarding kullanmayı değerlendirin; çünkü ikincisinin önemli kısıtlamaları vardır:

  • Uyumluluk sorunları: Birden fazla uygulama sürümünü desteklerken sorun yaratabilir; geriye dönük uyumlu tasarımlar yapmanızı ya da eski sürümlerin yanlış görüntüleneceğini kabul etmenizi gerektirebilir.
  • Kişiselleştirme yok: Yalnızca “All Users” kitlesi için içerik gösterir; ülke, attribution veya özel niteliklere dayalı hedeflemeyi ortadan kaldırır.

Kullanım durumunuzda daha hızlı çekme bu dezavantajlardan ağır basıyorsa aşağıda gösterildiği gibi getOnboardingForDefaultAudience kullanın. Aksi takdirde yukarıda açıklandığı gibi getOnboarding kullanın.

Adapty.getOnboardingForDefaultAudience("YOUR_PLACEMENT_ID") { result ->
    when (result) {
        is AdaptyResult.Success -> {
            val onboarding = result.value
            // Handle successful onboarding retrieval
        }
        is AdaptyResult.Error -> {
            val error = result.error
            // Handle error case
        }
    }
}

Parametreler:

ParametreZorunlulukAçıklama
placementIdzorunluİstenen Placement’ın tanımlayıcısı. Bu, Adapty Kontrol Paneli’nde placement oluştururken belirttiğiniz değerdir.
locale

isteğe bağlı

varsayılan: en

Onboarding yerelleştirmesinin tanımlayıcısı. Bu parametrenin, eksi (-) karakteriyle ayrılmış bir veya iki alt etiketten oluşan bir dil kodu olması beklenir. İlk alt etiket dil için, ikincisi bölge içindir.

Örnek: en İngilizce anlamına gelir, pt-br Brezilya Portekizcesini temsil eder.

Yerel ayar kodları ve bunların nasıl kullanılmasını önerdiğimiz hakkında daha fazla bilgi için Yerelleştirmeler ve yerel ayar kodları sayfasına bakın.

fetchPolicyvarsayılan: .reloadRevalidatingCacheData

SDK varsayılan olarak sunucudan veri yüklemeye çalışır; başarısız olursa önbelleğe alınmış verileri döndürür. Kullanıcılarınızın her zaman en güncel verilere ulaşmasını sağladığından bu seçeneği öneriyoruz.

Ancak kullanıcılarınızın kararsız internet bağlantısıyla karşılaştığını düşünüyorsanız, önbellekte veri varsa bunu döndürmek için .returnCacheDataElseLoad kullanmayı değerlendirin. Bu senaryoda kullanıcılar en güncel veriye her zaman ulaşamayabilir, ama internet bağlantısı ne kadar zayıf olursa olsun daha hızlı yükleme süreleriyle karşılaşırlar. Önbellek düzenli olarak güncellenir, bu nedenle ağ isteklerinden kaçınmak için oturum boyunca kullanmak güvenlidir.

Önbelleğin uygulama yeniden başlatıldığında bozulmadığını, yalnızca uygulama yeniden yüklendiğinde veya manuel temizlik yapıldığında silindiğini unutmayın.

Adapty SDK onboarding’leri yerel olarak iki katmanda saklar: yukarıda açıklanan düzenli güncellenen önbellek ve yedek onboarding’ler. Onboarding’leri daha hızlı çekmek için CDN, CDN’e erişilemeyen durumlarda ise bağımsız bir yedek sunucu kullanıyoruz. Bu sistem, internet bağlantısının yetersiz olduğu durumlarda bile güvenilirliği sağlarken onboarding’lerinizin her zaman en güncel sürümünü almanızı sağlamak için tasarlanmıştır.