Responder a acciones de botones en el SDK de Unity
Si estás creando paywalls con el Paywall Builder de Adapty, es fundamental configurar los botones correctamente:
- Añade un botón en el Paywall Builder y asígnale una acción existente o crea un ID de acción personalizado.
- Escribe código en tu app para gestionar cada acción que hayas asignado.
Esta guía muestra cómo gestionar acciones personalizadas y predefinidas en tu código.
Solo las compras y restauraciones se gestionan automáticamente. El resto de acciones de botones, como cerrar paywalls o abrir enlaces, requieren implementar respuestas específicas en el código de la app.
Cerrar paywalls
Para añadir un botón que cierre tu paywall:
- En el Paywall Builder, añade un botón y asígnale la acción Close.
- En el código de tu app, implementa un handler para la acción
closeque descarte el paywall.
public void PaywallViewDidPerformAction(
AdaptyUIPaywallView view,
AdaptyUIUserAction action
) {
switch (action.Type) {
case AdaptyUIUserActionType.Close:
view.Dismiss(null);
break;
default:
// handle other events
break;
}
}
Abrir URLs desde paywalls
Si quieres añadir un grupo de enlaces (p. ej., términos de uso y restauración de compras), añade un elemento Link en el Paywall Builder y gestíonalo igual que los botones con la acción Open URL.
Para añadir un botón que abra un enlace desde tu paywall (p. ej., Terms of use o Privacy policy):
- En el Paywall Builder, añade un botón, asígnale la acción Open URL e introduce la URL que quieres abrir.
- En el código de tu app, implementa un handler para la acción
openUrlque abra la URL recibida en un navegador.
public void PaywallViewDidPerformAction(
AdaptyUIPaywallView view,
AdaptyUIUserAction action
) {
switch (action.Type) {
case AdaptyUIUserActionType.OpenUrl:
var urlString = action.Value;
if(!string.IsNullOrWhiteSpace(urlString)) {
Application.OpenURL(urlString);
}
break;
default:
// handle other events
break;
}
}
Iniciar sesión en la app
Para añadir un botón que permita a los usuarios iniciar sesión en tu app:
- En el Paywall Builder, añade un botón y asígnale la acción Custom con el ID
login. - En el código de tu app, implementa un handler para la acción personalizada
loginque identifique a tu usuario.
public void PaywallViewDidPerformAction(
AdaptyUIPaywallView view,
AdaptyUIUserAction action
) {
switch (action.Type) {
case AdaptyUIUserActionType.Custom:
if (action.Value == "login") {
// Navigate to login scene
SceneManager.LoadScene("LoginScene");
}
break;
default:
// handle other events
break;
}
}
Gestionar acciones personalizadas
Para añadir un botón que gestione cualquier otra acción:
- En el Paywall Builder, añade un botón, asígnale la acción Custom y asígnale un ID.
- En el código de tu app, implementa un handler para el ID de acción que hayas creado.
Por ejemplo, si tienes otro conjunto de ofertas de suscripción o compras únicas, puedes añadir un botón que muestre otro paywall:
public void PaywallViewDidPerformAction(
AdaptyUIPaywallView view,
AdaptyUIUserAction action
) {
switch (action.Type) {
case AdaptyUIUserActionType.Custom:
if (action.Value == "openNewPaywall") {
// Display another paywall
ShowAlternativePaywall();
}
break;
default:
// handle other events
break;
}
}
private void ShowAlternativePaywall() {
// Implement your logic to show alternative paywall
}