Class POBMraidRenderer

  • All Implemented Interfaces:
    com.pubmatic.sdk.common.ui.POBBannerRendering , com.pubmatic.sdk.common.ui.POBHtmlRendererListener , com.pubmatic.sdk.common.viewability.POBObstructionUpdateListener , com.pubmatic.sdk.webrendering.mraid.POBMraidControllerListener , com.pubmatic.sdk.webrendering.ui.POBHTMLViewClient.OnRenderProcessGoneListener

    @MainThread() 
    public class POBMraidRenderer
     implements POBMraidControllerListener, POBBannerRendering, POBHtmlRendererListener, POBObstructionUpdateListener, POBHTMLViewClient.OnRenderProcessGoneListener
                        

    This class is responsible for rendering and handling the events of Mraid Ads.

    • Constructor Detail

    • Method Detail

      • setRenderingTimeout

         void setRenderingTimeout(int renderingTimeout)

        To set rendering timeout, in case if renderer takes more time than rendering timeout to render renderer notifies rendering timeout error. In order to execute properly set before renderAd For default value see MAX_RENDER_TIMEOUT_IN_SEC

        Parameters:
        renderingTimeout - the timeout in seconds.
      • setHTMLMeasurementListener

         void setHTMLMeasurementListener(POBHTMLMeasurementProvider openMeasurementListener)

        Setter provides measurement callback to implementation class

        Parameters:
        openMeasurementListener - reference of POBHTMLMeasurementProvider
      • onOpen

         void onOpen(@Nullable() String url)

        Gets called when MRAID open event about to happen. Handles Opening url and notifies it to mraidRendererListener

        Parameters:
        url - the url on which mraid open event happened.
      • isUserInteracted

         boolean isUserInteracted(boolean overrideClickState)

        Returns true if user has recently touch/click on web view. It sets the internal interaction state to false until user interacted again.

        Returns:

        Returns true if user has recently touch/click on web view else return false

      • onMRAIDAdClick

         void onMRAIDAdClick()

        Notifies Mraid ad click event about to happen.

      • onAdUnload

         void onAdUnload()

        Notifies event for Mraid Unload to the implemented class(PMBannerRenderer)

      • onAdViewChanged

         void onAdViewChanged(@NonNull() View adView)

        Notifies updated Ad view for viewability measurement events.

        Parameters:
        adView - updated Ad view
      • shouldUseCustomClose

         void shouldUseCustomClose(boolean state)

        Indicates whether custom close button in creative is enabled or not. In case it is enabled, we are handling the skip button and timer accordingly.

        Parameters:
        state - A boolean indicating whether the custom close button is enabled or not.
      • setAdRendererListener

         void setAdRendererListener(@Nullable() POBAdRendererListener listener)

        To set renderer list to get renderer callbacks

        Parameters:
        listener - ad renderer listener
      • destroy

         void destroy()

        Callback method to clean up mraid renderer resources. Note: Should be called from UI thread.

      • invalidate

         void invalidate()

        Invalidate the Mraid Renderer.

      • onViewRendered

         void onViewRendered(@NonNull() View view)

        Callback method, gets called when renderer is about to complete its loading.

        Parameters:
        view - Rendered view for which loading is completed.
      • setTrackerHandler

         void setTrackerHandler(@NonNull() POBTrackerHandler trackerHandler)

        Method to set POBTrackerHandler for execution of click trackers

        Parameters:
        trackerHandler - Instance of POBTrackerHandler
      • setBaseURL

         void setBaseURL(@Nullable() String baseURL)

        To set base url, used to render html content on WebWiew

        Parameters:
        baseURL - the URL to use as the WebView's base URL