Répondre aux actions des flows - Android

Si vous créez des flows ou des paywalls avec le Flow Builder ou le Paywall Builder d’Adapty, il est essentiel de configurer correctement les boutons :

  1. Ajoutez un bouton dans le builder et assignez-lui une action existante ou créez un ID d’action personnalisé.
  2. Écrivez le code dans votre app pour gérer chaque action assignée.

Ce guide explique comment gérer les actions personnalisées et existantes dans votre code.

Seuls les achats, les restaurations, la fermeture des flows/paywalls et l’ouverture d’URL sont gérés automatiquement. Toutes les autres actions de boutons nécessitent une implémentation appropriée dans le code de l’app.

Fermer les flows et les paywalls

Pour ajouter un bouton qui ferme votre flow ou paywall :

  1. Dans le builder, ajoutez un bouton et assignez-lui l’action Close.
  2. Dans le code de votre app, implémentez un handler pour l’action close.

Dans le SDK Android, l’action close déclenche par défaut la fermeture du flow ou du paywall. Vous pouvez toutefois redéfinir ce comportement dans votre code si nécessaire. Par exemple, la fermeture d’un flow peut déclencher l’ouverture d’un autre.

override fun onActionPerformed(action: AdaptyUI.Action, context: Context) {
    when (action) {
        AdaptyUI.Action.Close -> (context as? Activity)?.onBackPressed() // default behavior
    }
}

Ouvrir des URL depuis les flows et les paywalls

Si vous souhaitez ajouter un groupe de liens (par exemple, les conditions d’utilisation et la restauration des achats), ajoutez un élément Link dans le builder et gérez-le de la même façon que les boutons avec l’action Open URL.

Pour ajouter un bouton qui ouvre un lien depuis votre flow ou paywall (par exemple, Terms of use ou Privacy policy) :

  1. Dans le builder, ajoutez un bouton, assignez-lui l’action Open URL et saisissez l’URL à ouvrir.
  2. Dans le code de votre app, implémentez un handler pour l’action openUrl qui ouvre l’URL reçue dans un navigateur.

Dans le SDK Android, l’action openUrl déclenche par défaut l’ouverture de l’URL. Vous pouvez toutefois redéfinir ce comportement dans votre code si nécessaire.

override fun onActionPerformed(action: AdaptyUI.Action, context: Context) {
   when (action) {    
       is AdaptyUI.Action.OpenUrl -> {
           val intent = Intent(Intent.ACTION_VIEW, Uri.parse(action.url)) // default behavior
           context.startActivity(intent)
       }
   }
}

Gérer les actions personnalisées

Pour ajouter un bouton qui gère d’autres actions :

  1. Dans le builder, ajoutez un bouton, assignez-lui l’action Custom et donnez-lui un ID.
  2. Dans le code de votre app, implémentez un handler pour l’ID d’action que vous avez créé.

Par exemple, si vous proposez un autre ensemble d’offres d’abonnement ou d’achats uniques, vous pouvez ajouter un bouton qui affiche un autre flow ou paywall :

override fun onActionPerformed(action: AdaptyUI.Action, context: Context) {
   when (action) {
       is AdaptyUI.Action.Custom -> {
           if (action.customId == "openNewPaywall") {
               // Display another flow or paywall
           }
       }
   }
}

Si vous créez des paywalls avec le Paywall Builder d’Adapty, il est essentiel de configurer correctement les boutons :

  1. Ajoutez un bouton dans le Paywall Builder et assignez-lui une action existante ou créez un ID d’action personnalisé.
  2. Écrivez le code dans votre app pour gérer chaque action assignée.

Ce guide explique comment gérer les actions personnalisées et existantes dans votre code.

Seuls les achats, les restaurations, la fermeture des paywalls et l’ouverture d’URL sont gérés automatiquement. Toutes les autres actions de boutons nécessitent une implémentation appropriée dans le code de l’app.

Fermer les paywalls

Pour ajouter un bouton qui ferme votre paywall :

  1. Dans le Paywall Builder, ajoutez un bouton et assignez-lui l’action Close.
  2. Dans le code de votre app, implémentez un handler pour l’action close qui ferme le paywall.

Dans le SDK Android, l’action close déclenche par défaut la fermeture du paywall. Vous pouvez toutefois redéfinir ce comportement dans votre code si nécessaire. Par exemple, la fermeture d’un paywall peut déclencher l’ouverture d’un autre.

override fun onActionPerformed(action: AdaptyUI.Action, context: Context) {
    when (action) {
        AdaptyUI.Action.Close -> (context as? Activity)?.onBackPressed() // default behavior
    }
}

Ouvrir des URL depuis les paywalls

Si vous souhaitez ajouter un groupe de liens (par exemple, les conditions d’utilisation et la restauration des achats), ajoutez un élément Link dans le Paywall Builder et gérez-le de la même façon que les boutons avec l’action Open URL.

Pour ajouter un bouton qui ouvre un lien depuis votre paywall (par exemple, Terms of use ou Privacy policy) :

  1. Dans le Paywall Builder, ajoutez un bouton, assignez-lui l’action Open URL et saisissez l’URL à ouvrir.
  2. Dans le code de votre app, implémentez un handler pour l’action openUrl qui ouvre l’URL reçue dans un navigateur.

Dans le SDK Android, l’action openUrl déclenche par défaut l’ouverture de l’URL. Vous pouvez toutefois redéfinir ce comportement dans votre code si nécessaire.

override fun onActionPerformed(action: AdaptyUI.Action, context: Context) {
   when (action) {    
       is AdaptyUI.Action.OpenUrl -> {
           val intent = Intent(Intent.ACTION_VIEW, Uri.parse(action.url)) // default behavior
           context.startActivity(intent)
       }
   }
}

Se connecter à l’app

Pour ajouter un bouton qui connecte les utilisateurs à votre app :

  1. Dans le Paywall Builder, ajoutez un bouton et assignez-lui l’action Login.
  2. Dans le code de votre app, implémentez un handler pour l’action login qui identifie votre utilisateur.
override fun onActionPerformed(action: AdaptyUI.Action, context: Context) {
   when (action) {
       AdaptyUI.Action.Login -> {
           val intent = Intent(context, LoginActivity::class.java)
           context.startActivity(intent)
       }
   }
}

Gérer les actions personnalisées

Pour ajouter un bouton qui gère d’autres actions :

  1. Dans le Paywall Builder, ajoutez un bouton, assignez-lui l’action Custom et donnez-lui un ID.
  2. Dans le code de votre app, implémentez un handler pour l’ID d’action que vous avez créé.

Par exemple, si vous proposez un autre ensemble d’offres d’abonnement ou d’achats uniques, vous pouvez ajouter un bouton qui affiche un autre paywall :

override fun onActionPerformed(action: AdaptyUI.Action, context: Context) {
   when (action) {
       is AdaptyUI.Action.Custom -> {
           if (action.customId == "openNewPaywall") {
               // Display another paywall
           }
       }
   }
}