Flow ve paywall'ları görüntüleme - Android

Flow ve paywall'ları görüntüleme
Flow'lar Flow Builder ile oluşturulur — cihazda natif olarak render edilir, WebView gerekmez
Paywall Builder paywall'ları Mevcut tüm Paywall Builder içeriği

Bir flow veya paywall oluşturduysanız, bunu kullanıcıya göstermek için mobil uygulama kodunuzda render etme konusunda endişelenmenize gerek yok. Böyle bir flow veya paywall, içinde ne gösterileceğini ve nasıl gösterileceğini zaten barındırır.

Bu kılavuz, Adapty tarafından render edilen flow’ları ve yeni Paywall Builder paywalllarını kapsar. Remote config paywallları ve Observer mode için süreç farklıdır.

Aşağıda kullanılan flowConfiguration nesnesini almak için bkz. Flow’ları ve paywall’ları al.

İstek parametreleri:

ParametreZorunlulukAçıklama
flowConfigurationzorunluFlow’un görsel detaylarını içeren bir AdaptyUI.FlowConfiguration nesnesi sağlayın. Yüklemek için AdaptyUI.getFlowConfiguration(flow) metodunu kullanın. Daha fazla bilgi için Görünüm yapılandırmasını getirme konusuna bakın.
productsisteğe bağlıEkrandaki ürünlerin görüntülenme zamanlamasını optimize etmek için bir AdaptyPaywallProduct dizisi sağlayın. null geçilirse AdaptyUI gerekli ürünleri otomatik olarak getirir.
eventListeneristeğe bağlıFlow olaylarını izlemek için bir AdaptyFlowEventListener sağlayın. Kullanım kolaylığı açısından AdaptyFlowDefaultEventListener sınıfını genişletmeniz önerilir. Daha fazla bilgi için Flow ve paywall olaylarını yönetme konusuna bakın.
insetsisteğe bağlı

Inset’ler, tıklanabilir öğelerin sistem çubukların arkasına gizlenmesini önlemek için flow’un çevresindeki boşluklardır.

Varsayılan: Unspecified — yani Adapty inset’leri otomatik olarak ayarlar; bu, kenardan kenara flow’lar için idealdir.

Flow’unuz kenardan kenara değilse özel inset’ler ayarlamak isteyebilirsiniz. Bunun nasıl yapılacağını öğrenmek için aşağıdaki Flow inset’lerini değiştirme bölümünü okuyun.

customAssetsisteğe bağlıFlow veya paywall’ınızdaki görsel ve videoları çalışma zamanında değiştirmek için bir AdaptyCustomAssets nesnesi geçin. Daha fazla bilgi için Varlıkları özelleştirme konusuna bakın.
tagResolveristeğe bağlıFlow metnindeki özel etiketleri çözümlemek için AdaptyUiTagResolver kullanın. Bu çözümleyici bir etiket parametresi alır ve buna karşılık gelen bir dizeye dönüştürür. Daha fazla bilgi için Paywall Builder’da özel etiketler konusuna bakın.
timerResolveristeğe bağlıÖzel zamanlayıcı işlevselliği kullanacaksanız çözümleyiciyi buraya geçin.

Adapty SDK’nın bir mobil uygulamaya nasıl entegre edildiğini gerçek bir örnekle görmek ister misiniz? Tam kurulumu, paywall’ların gösterimini, satın alma işlemlerini ve diğer temel işlevleri içeren örnek uygulamalarımıza göz atın.

Flow inset’lerini değiştirme

Inset’ler, flow’un etrafındaki boşluklardır ve tıklanabilir öğelerin sistem çubuklarının arkasında gizlenmesini önler. Adapty varsayılan olarak inset’leri otomatik olarak ayarlar; bu, kenardan kenara flow’larda mükemmel çalışır.

Flow’unuz kenardan kenara değilse, özel inset’ler ayarlamak isteyebilirsiniz:

  • AdaptyFlowView üst durum çubuğuyla da alt gezinme çubuğuyla da çakışmıyorsa AdaptyFlowInsets.None kullanın.
  • Flow’unuz üst durum çubuğuyla çakışıyor ancak altla çakışmıyorsa gibi daha özel durumlar için yalnızca bottomInset değerini aşağıdaki örnekte gösterildiği gibi 0 olarak ayarlayabilirsiniz:

Geliştirici tanımlı zamanlayıcı kullanımı

Mobil uygulamanızda geliştirici tanımlı zamanlayıcılar kullanmak için bir timerResolver nesnesi oluşturun; bu nesne, özel zamanlayıcıları flow oluşturulduğunda yerlerine geçecek string değerlerle eşleştiren bir sözlük veya haritadır. İşte bir örnek:

Bu örnekte, CUSTOM_TIMER_NY, Adapty kontrol panelinde ayarladığınız geliştirici tanımlı zamanlayıcının Timer ID’sidir. timerResolver, uygulamanızın zamanlayıcıyı doğru değerle (örneğin 13d 09h 03m 34s gibi — zamanlayıcının bitiş zamanından, yani Yılbaşı gibi bir tarihten, mevcut zamanın çıkarılmasıyla hesaplanan) dinamik olarak güncellemesini sağlar.

Özel etiketleri kullanma

Mobil uygulamanızda özel etiketler kullanmak için bir tagResolver nesnesi oluşturun; bu nesne, özel etiketleri flow oluşturulduğunda onların yerine geçecek string değerlerle eşleştiren bir sözlük ya da haritadır. İşte bir örnek:

Bu örnekte, USERNAME Adapty kontrol panelinde <USERNAME/> olarak girdiğiniz özel bir etikettir. tagResolver, uygulamanızın bu özel etiketi dinamik olarak belirtilen değerle—örneğin John—değiştirmesini sağlar.

tagResolver’ı flow’unuzu sunmadan hemen önce oluşturup doldurmanızı öneririz. Hazır olduğunda, flow’u sunmak için kullandığınız AdaptyUI metoduna iletin.

Flow yükleme göstergesi rengini değiştirme

Yükleme göstergesinin varsayılan rengini aşağıdaki şekilde geçersiz kılabilirsiniz:


<style name="AppTheme" parent="android:Theme.Material.Light.NoActionBar">

    <item name="adapty_progressIndicatorColor">@color/yourColor</item>
</style>

Paywall Builder ile özelleştirilmiş bir paywall oluşturduysanız, kullanıcıya göstermek için mobil uygulama kodunuzda bu paywall’ı oluşturma konusunda endişelenmenize gerek yoktur. Böyle bir paywall, hem paywall içinde nelerin gösterileceğini hem de nasıl gösterileceğini içerir.

Bu kılavuz yalnızca SDK v3.0 gerektiren yeni Paywall Builder paywallları için geçerlidir. Paywall sunma süreci, farklı Paywall Builder sürümleriyle tasarlanan paywalllar, remote config paywalllar ve Observer modu için farklılık gösterir.

Aşağıda kullanılan viewConfiguration nesnesini almak için bkz. Paywall Builder paywalllerini ve yapılandırmalarını getirme.

İstek parametreleri:

ParametreVarlıkAçıklama
viewConfigurationzorunluPaywallın görsel ayrıntılarını içeren bir AdaptyUI.LocalizedViewConfiguration nesnesi sağlayın. Bunu yüklemek için Adapty.getViewConfiguration(paywall) metodunu kullanın. Daha fazla bilgi için Paywallın görsel yapılandırmasını getirme konusuna bakın.
productsisteğe bağlıEkrandaki ürünlerin görüntülenme zamanlamasını optimize etmek için bir AdaptyPaywallProduct dizisi sağlayın. null geçilirse AdaptyUI gerekli ürünleri otomatik olarak getirir.
eventListeneristeğe bağlıPaywall olaylarını izlemek için bir AdaptyUiEventListener sağlayın. Kullanım kolaylığı açısından AdaptyUiDefaultEventListener’ı genişletmeniz önerilir. Daha fazla bilgi için Paywall olaylarını yönetme konusuna bakın.
insetsisteğe bağlı

Insets, tıklanabilir öğelerin sistem çubuklarının arkasına gizlenmesini önleyen paywall etrafındaki boşluklardır.

Varsayılan: UNSPECIFIED — bu, Adapty’nin inset’leri otomatik olarak ayarlayacağı anlamına gelir; bu ayar kenardan kenara paywalllar için mükemmel çalışır.

Paywallınız kenardan kenara değilse özel inset’ler ayarlamak isteyebilirsiniz. Bunun nasıl yapılacağını aşağıdaki Paywall inset’lerini değiştirme bölümünde okuyabilirsiniz.

personalizedOfferResolveristeğe bağlıKişiselleştirilmiş fiyatlandırmayı (daha fazla bilgi) belirtmek için AdaptyUiPersonalizedOfferResolver uygulayın ve AdaptyPaywallProduct’ı, ürünün fiyatı kişiselleştirilmişse true, değilse false olarak eşleyen kendi mantığınızı geçirin.
tagResolveristeğe bağlıPaywall metnindeki özel etiketleri çözümlemek için AdaptyUiTagResolver kullanın. Bu çözümleyici bir etiket parametresi alır ve bunu karşılık gelen bir dizeye dönüştürür. Daha fazla bilgi için Paywall Builder’daki Özel Etiketler konusuna bakın.
timerResolveristeğe bağlıÖzel zamanlayıcı işlevselliği kullanacaksanız çözümleyiciyi buraya geçirin.

Adapty SDK’nın bir mobil uygulamaya nasıl entegre edildiğini gerçek bir örnekle görmek ister misiniz? Tam kurulumu, paywall’ların gösterimini, satın alma işlemlerini ve diğer temel işlevleri içeren örnek uygulamalarımıza göz atın.

Paywall insets’lerini değiştirme

Insets, tıklanabilir öğelerin sistem çubukları arkasında gizlenmesini engelleyen paywall etrafındaki boşluklardır. Varsayılan olarak Adapty, kenar-kenara paywalllar için harika çalışan insets’leri otomatik olarak ayarlar.

Paywallınız kenar-kenara değilse özel insets ayarlamak isteyebilirsiniz:

  • AdaptyPaywallView ile ne durum çubuğu ne de gezinme çubuğu çakışmıyorsa AdaptyPaywallInsets.NONE kullanın.
  • Paywallınız üst durum çubuğuyla çakışıyor ama alt kısımla çakışmıyorsa gibi daha özel durumlarda, aşağıdaki örnekte gösterildiği gibi yalnızca bottomInset’i 0 olarak ayarlayabilirsiniz:

Geliştirici tanımlı zamanlayıcı kullanma

Mobil uygulamanızda geliştirici tanımlı zamanlayıcılar kullanmak için bir timerResolver nesnesi oluşturun; bu nesne, özel zamanlayıcıları paywall oluşturulduğunda onların yerine geçecek string değerleriyle eşleştiren bir sözlük ya da haritadır. İşte bir örnek:

Bu örnekte, CUSTOM_TIMER_NY, Adapty kontrol panelinde ayarladığınız geliştirici tanımlı zamanlayıcının Timer ID’sidir. timerResolver, uygulamanızın zamanlayıcıyı doğru değerle dinamik olarak güncellemesini sağlar; örneğin 13d 09h 03m 34s (zamanlayıcının bitiş zamanı, Yeni Yıl günü gibi, eksi mevcut zaman olarak hesaplanır).

Özel etiketleri kullanma

Mobil uygulamanızda özel etiketler kullanmak için bir tagResolver nesnesi oluşturun; bu nesne, özel etiketleri paywall render edildiğinde onların yerini alacak dize değerleriyle eşleştiren bir sözlük veya haritadır. İşte bir örnek:

Bu örnekte USERNAME, Adapty kontrol panelinde <USERNAME/> olarak girdiğiniz özel bir etikettir. tagResolver, uygulamanızın bu özel etiketi dinamik olarak belirtilen değerle (örneğin John) değiştirmesini sağlar.

tagResolver’ı paywall’ı göstermeden hemen önce oluşturup doldurmanızı öneririz. Hazır olduğunda, paywall’ı sunmak için kullandığınız AdaptyUI metoduna aktarın.

Yükleme göstergesinin rengini değiştirme

Yükleme göstergesinin varsayılan rengini aşağıdaki şekilde geçersiz kılabilirsiniz:


<style name="AppTheme" parent="android:Theme.Material.Light.NoActionBar">

    <item name="adapty_progressIndicatorColor">@color/yourColor</item>
</style>