Implementar web paywalls en el SDK de Kotlin Multiplatform
Antes de comenzar, asegúrate de haber configurado tu web paywall en el dashboard e instalado la versión 3.15 o posterior del SDK de Adapty.
Abrir web paywalls
Si estás trabajando con un paywall que desarrollaste tú mismo, necesitas gestionar los web paywalls usando el método del SDK. El método openWebPaywall:
- Genera una URL única que permite a Adapty vincular un paywall específico mostrado a un usuario concreto con la página web a la que es redirigido.
- Detecta cuándo los usuarios regresan a la app y luego solicita
getProfilea intervalos cortos para determinar si los derechos de acceso del perfil han sido actualizados.
De esta forma, si el pago fue exitoso y los derechos de acceso han sido actualizados, la suscripción se activa en la app casi de inmediato.
Cuando los usuarios regresen a la app, actualiza la interfaz para reflejar los cambios del perfil. Adapty recibirá y procesará los eventos de actualización del perfil.
viewModelScope.launch {
Adapty.openWebPaywall(product = product).onSuccess {
// the web paywall was opened successfully
}.onError { error ->
// handle the error
}
}
Existen dos versiones del método openWebPaywall:
openWebPaywall(product = product), que genera URLs a partir del paywall y también añade los datos del producto a las URLs.openWebPaywall(paywall = paywall), que genera URLs a partir del paywall sin añadir los datos del producto a las URLs. Úsalo cuando los productos de tu paywall en Adapty sean diferentes a los del web paywall.
Abrir web paywalls en un navegador integrado
Por defecto, los web paywalls se abren en el navegador externo.
Para ofrecer una experiencia de usuario más fluida, puedes abrir los web paywalls en un navegador integrado. Esto muestra la página de compra web dentro de tu aplicación, permitiendo a los usuarios completar las transacciones sin salir de la app.
Para habilitarlo, establece el parámetro openIn en AdaptyWebPresentation.IN_APP_BROWSER:
viewModelScope.launch {
Adapty.openWebPaywall(
product = product,
openIn = AdaptyWebPresentation.IN_APP_BROWSER // default – EXTERNAL_BROWSER
).onSuccess {
// the web paywall was opened successfully
}.onError { error ->
// handle the error
}
}