Capacitor SDK'da buton eylemlerine yanıt verme
Adapty paywall builder kullanarak paywall oluşturuyorsanız butonları doğru şekilde ayarlamanız kritik öneme sahiptir:
- Paywall builder’a bir buton ekleyin ve ona önceden tanımlanmış bir eylem atayın ya da özel bir eylem ID’si oluşturun.
- Atadığınız her eylemi uygulamanızda ele almak için kod yazın.
Bu kılavuz, kodunuzda özel ve önceden tanımlanmış eylemleri nasıl yöneteceğinizi göstermektedir.
Paywall’ları kapatma
Paywall’ınızı kapatacak bir buton eklemek için:
- Paywall builder’da bir buton ekleyin ve Close eylemini atayın.
- Uygulama kodunuzda, paywall’ı kapatan
closeeylemi için bir işleyici oluşturun.
Capacitor SDK’da close eylemi, paywall’ı varsayılan olarak kapatmayı tetikler. Ancak gerekirse bu davranışı kodunuzda geçersiz kılabilirsiniz. Örneğin, bir paywall’ı kapatmak başka bir paywall’ı açmayı tetikleyebilir.
const view = await createPaywallView(paywall);
const unsubscribe = view.setEventHandlers({
onCloseButtonPress() {
console.log('User closed paywall');
return true; // Allow the paywall to close
}
});
Paywall’lardan URL açma
Bir grup bağlantı eklemek istiyorsanız (ör. kullanım koşulları ve satın alma iadesi), paywall builder’da bir Link öğesi ekleyin ve bunu Open URL eylemine sahip butonlarla aynı şekilde yönetin.
Paywall’ınızdan bir bağlantı açan bir buton eklemek için (ör. Terms of use veya Privacy policy):
- Paywall builder’da bir buton ekleyin, Open URL eylemini atayın ve açmak istediğiniz URL’yi girin.
- Uygulama kodunuzda, alınan URL’yi tarayıcıda açan
openUrleylemi için bir işleyici oluşturun.
Capacitor SDK’da window.open eylemi, URL’yi varsayılan olarak açmayı tetikler. Ancak gerekirse bu davranışı kodunuzda geçersiz kılabilirsiniz.
const view = await createPaywallView(paywall);
const unsubscribe = view.setEventHandlers({
onUrlPress(url) {
window.open(url, '_blank');
return false; // Don't close the paywall
},
});
Uygulamaya giriş yapma
Kullanıcıların uygulamanıza giriş yapmasını sağlayan bir buton eklemek için:
- Paywall builder’da bir buton ekleyin ve Login eylemini atayın.
- Uygulama kodunuzda, kullanıcınızı tanımlayan
logineylemi için bir işleyici oluşturun.
const view = await createPaywallView(paywall);
const unsubscribe = view.setEventHandlers({
onCustomAction(actionId) {
if (actionId === 'login') {
// Navigate to login screen
console.log('User requested login');
}
}
});
Özel eylemleri yönetme
Diğer eylemleri yöneten bir buton eklemek için:
- Paywall builder’da bir buton ekleyin, Custom eylemini atayın ve bir ID belirleyin.
- Uygulama kodunuzda, oluşturduğunuz eylem ID’si için bir işleyici oluşturun.
Örneğin, başka bir abonelik teklifi ya da tek seferlik satın alma seçeneğiniz varsa başka bir paywall görüntüleyen bir buton ekleyebilirsiniz:
const unsubscribe = view.setEventHandlers({
onCustomAction(actionId) {
if (actionId === 'openNewPaywall') {
// Display another paywall
console.log('User requested new paywall');
}
},
});