Articles on: Engage - Mobile SDK
This article is also available in:

Engage mobile app SDK - How to integrate an Engage element on Android?

Our Poool Engage SDK is available for iOS and Android, with two distinct integrations.


All the information on the Android technical installation is available in our documentation:


πŸ‘‰ Installation on Android with Jetpack Compose
πŸ‘‰ Installation on Android with Views (legacy)


In this article, we give you more details on the essential elements to anticipate for your configurations.


Setup and initialization


A dedicated Dashboard application exists for each iOS and Android integration, with two distinct IDs (which are also different from those of your web applications).


You must therefore use your Android application ID in the constructor in order to create a new Engage instance:



val engage = Engage("<votre_app_id>", context)


EngageProvider(appId = "<votre_app_id>", config = mapOf("debug" to true)) {
// Votre contenu
}


Your ID is given at the time of onboarding and available in the Dashboard, 'Settings' tab > Application > Application ID.




Methods available to display the Engage element / Views version (Legacy)


Two methods are available, depending on the format you want to display.


autoCreate() method


Thanks to this method, the native Dashboard conditions will be applied.


engage.autoCreate()


Advantages:

  • Choice of format directly in the Dashboard (Modal, Bottom-sheet, Target ID).
  • Flexibility in applying Poool's native conditions
  • Activation of custom filters to refine targeting


Find the technical documentation here: https://www.poool.dev/fr/docs/engage/android/methods#autocreate



createElement() method


This method is useful in the case where you want to display a specific element in a targeted UIView, via the element's slug defined in the Dashboard.


engage.createElement("element-slug", targetViewGroup)

Advantages:

  • Display custom formats (Full Page format in particular)
  • Total control of the display on the integration side


Find the documentation on this topic here:
https://www.poool.dev/fr/docs/engage/android/methods#createelement


The element's slug must follow a certain format: lowercase, without accents, "-".
Example: 'abonne-inactif'



Methods available to display the Engage element / JetPack Compose version


EngageElements composable


EngageElements(filters = listOf("filter-1", "filter-2"), autoCommitPageView = true)

Thanks to this method, the native Dashboard conditions will be applied.


Advantages:

  • Choice of format directly in the Dashboard (Modal, Bottom-sheet, Target ID).
  • Flexibility in applying Poool's native conditions
  • Activation of custom filters to refine targeting


πŸ’‘In the case where you want to display the element in a target ID, you can add a target value to your views like this: https://www.poool.dev/fr/docs/engage/android/with-compose#engageplaceholder-params



EngagePlaceholder(id = "target-1")


EngageElement composable



EngageElement(slug = "element_slug")


This method is useful in the case where you want to display a specific element in a targeted UIView, via the element's slug defined in the Dashboard.


Advantages:

  • Display custom formats (Full Page format in particular)
  • Total control of the display on the integration side



Refine your segmentation thanks to custom filters


In order to refine the display conditions of Engage elements, according to your own segmentation, you can use the filters configuration in the autoCreate() method. This involves sending an array of variables/values (in "string" format).



EngageElements(filters = listOf("abonne", "abonne-inactif"), autoCommitPageView = true)

On the Dashboard side, you can activate these elements:


  • Choose the "IS" or "CONTAINS" operator
  • Enter in the filters the slug that corresponds exactly to what is passed in the configuration.




In the "Settings" section of your Dashboard, you can create your custom filters catalog.
Declare here each of the filters that are passed in the integration, to then find them easily when configuring your conditions.


The activation of custom filters is available only in the case where you choose the autoCreate() method or the EngageElements composable

Updated on: 16/07/2026

Was this article helpful?

Share your feedback

Cancel

Thank you!