Flow ve paywall'ları görüntüleme - Android
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.
- Remote config paywall’larını sunmak için bkz. Remote config ile tasarlanmış paywall’ı göster.
- Observer mode paywall’larını sunmak için bkz. Android - Observer mode’da Paywall Builder paywall’larını sunma
Aşağıda kullanılan flowConfiguration nesnesini almak için bkz. Flow’ları ve paywall’ları al.
İstek parametreleri:
| Parametre | Zorunluluk | Açıklama |
|---|---|---|
| flowConfiguration | zorunlu | Flow’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. |
| products | isteğ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. |
| eventListener | isteğ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. |
| insets | isteğ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: 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. |
| customAssets | isteğ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. |
| tagResolver | isteğ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. |
| timerResolver | isteğ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ıyorsaAdaptyFlowInsets.Nonekullanın.- Flow’unuz üst durum çubuğuyla çakışıyor ancak altla çakışmıyorsa gibi daha özel durumlar için yalnızca
bottomInsetdeğerini aşağıdaki örnekte gösterildiği gibi0olarak 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.
- Remote config paywalllarını sunmak için bkz. Remote config ile tasarlanan paywall’ı render etme.
- Observer modu paywalllarını sunmak için bkz. Android - Observer modunda Paywall Builder paywalllarını sunma
Aşağıda kullanılan viewConfiguration nesnesini almak için bkz. Paywall Builder paywalllerini ve yapılandırmalarını getirme.
İstek parametreleri:
| Parametre | Varlık | Açıklama |
|---|---|---|
| viewConfiguration | zorunlu | Paywallı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. |
| products | isteğ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. |
| eventListener | isteğ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. |
| insets | isteğe bağlı | Insets, tıklanabilir öğelerin sistem çubuklarının arkasına gizlenmesini önleyen paywall etrafındaki boşluklardır. Varsayılan: 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. |
| personalizedOfferResolver | isteğ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. |
| tagResolver | isteğ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. |
| timerResolver | isteğ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:
AdaptyPaywallViewile ne durum çubuğu ne de gezinme çubuğu çakışmıyorsaAdaptyPaywallInsets.NONEkullanı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’i0olarak 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>