Class InAppMessaging

java.lang.Object
com.wonderpush.sdk.inappmessaging.InAppMessaging

public class InAppMessaging extends Object
The entry point of the In App Messaging headless SDK.

In-App Messaging will automatically initialize, and start listening for events.

  • Method Details

    • initialize

      @NonNull public static InAppMessaging initialize(android.app.Application application, com.wonderpush.sdk.InternalEventTracker internalEventTracker, InAppMessaging.InAppMessagingDelegate delegate)
      Internal method.
    • getInstance

      public static InAppMessaging getInstance()
      Get InAppMessaging instance
    • setMessagesSuppressed

      public void setMessagesSuppressed(@NonNull Boolean areMessagesSuppressed)
      Enable or disable suppression of In App Messaging messages

      When enabled, no in app messages will be rendered until either you either disable suppression, or the app restarts, as this state is not preserved over app restarts.

      By default, messages are not suppressed.

      Parameters:
      areMessagesSuppressed - Whether messages should be suppressed
    • areMessagesSuppressed

      public boolean areMessagesSuppressed()
      Determine whether messages are suppressed or not. This is honored by the UI sdk, which handles rendering the in app message.
      Returns:
      true if messages should be suppressed
    • getMessageDisplayComponent

      @Nullable public InAppMessagingDisplay getMessageDisplayComponent()
      Returns the current display component. Unless you've set your own with setMessageDisplayComponent(InAppMessagingDisplay), this will be the built-in display component.
      Returns:
      The current display component.
    • setMessageDisplayComponent

      public void setMessageDisplayComponent(@NonNull InAppMessagingDisplay messageDisplay)
      Called to set a new message display component for IAM SDK. This is the method used by both the default IAM display SDK or any app wanting to customize the message display.
    • clearDisplayListener

      public void clearDisplayListener()
      Remove previously registered display listeners.
    • addImpressionListener

      public void addImpressionListener(@NonNull InAppMessagingImpressionListener impressionListener)
      Registers an impression listener with IAM, which will be notified on every IAM impression
      Parameters:
      impressionListener -
    • addClickListener

      public void addClickListener(@NonNull InAppMessagingClickListener clickListener)
      Registers a click listener with IAM, which will be notified on every IAM click
      Parameters:
      clickListener -
    • addDisplayErrorListener

      public void addDisplayErrorListener(@NonNull InAppMessagingDisplayErrorListener displayErrorListener)
      Registers a display error listener with IAM, which will be notified on every IAM display error
      Parameters:
      displayErrorListener -
    • addImpressionListener

      public void addImpressionListener(@NonNull InAppMessagingImpressionListener impressionListener, @NonNull Executor executor)
      Registers an impression listener with IAM, which will be notified on every IAM impression, and triggered on the provided executor
      Parameters:
      impressionListener -
      executor -
    • addClickListener

      public void addClickListener(@NonNull InAppMessagingClickListener clickListener, @NonNull Executor executor)
      Registers a click listener with IAM, which will be notified on every IAM click, and triggered on the provided executor
      Parameters:
      clickListener -
      executor -
    • addDisplayErrorListener

      public void addDisplayErrorListener(@NonNull InAppMessagingDisplayErrorListener displayErrorListener, @NonNull Executor executor)
      Registers a display error listener with IAM, which will be notified on every IAM display error, and triggered on the provided executor
      Parameters:
      displayErrorListener -
      executor -
    • removeImpressionListener

      public void removeImpressionListener(@NonNull InAppMessagingImpressionListener impressionListener)
      Unregisters an impression listener
      Parameters:
      impressionListener -
    • removeClickListener

      public void removeClickListener(@NonNull InAppMessagingClickListener clickListener)
      Unregisters a click listener
      Parameters:
      clickListener -
    • removeDisplayErrorListener

      public void removeDisplayErrorListener(@NonNull InAppMessagingDisplayErrorListener displayErrorListener)
      Unregisters a display error listener
      Parameters:
      displayErrorListener -
    • triggerEvent

      public void triggerEvent(String eventType)
      Tell the in-app messaging SDK that an event of the given type was triggered. Useful for testing.
      Parameters:
      eventType -
    • displayInAppMessage

      public void displayInAppMessage(InAppMessage inAppMessage)