Class EmbeddedBrowserWebView
-
- All Implemented Interfaces:
-
android.graphics.drawable.Drawable.Callback,android.view.KeyEvent.Callback,android.view.ViewGroup.OnHierarchyChangeListener,android.view.ViewManager,android.view.ViewParent,android.view.ViewTreeObserver.OnGlobalFocusChangeListener,android.view.accessibility.AccessibilityEventSource,com.inmobi.ads.containers.RedirectionValidator
public final class EmbeddedBrowserWebView extends BaseWebView implements RedirectionValidator
-
-
Field Summary
Fields Modifier and Type Field Description private LandingPageTelemetryControlInfolandingPageTelemetryControlInfoprivate LongviewTouchTimestampprivate final LandingPageHandlerlandingPageHandler
-
Constructor Summary
Constructors Constructor Description EmbeddedBrowserWebView(Context context, Long viewTouchTimestamp, String placementType, String impressionId, String creativeId, Function1<JSONObject, Unit> onLpLifecycleEvent, InMobiLogger logger)
-
Method Summary
Modifier and Type Method Description final LandingPageTelemetryControlInfogetLandingPageTelemetryControlInfo()final UnitsetLandingPageTelemetryControlInfo(LandingPageTelemetryControlInfo landingPageTelemetryControlInfo)LonggetViewTouchTimestamp()This returns the View Touch Timestamp of the user on the ad or Embedded browser. UnitsetViewTouchTimestamp(Long viewTouchTimestamp)This returns the View Touch Timestamp of the user on the ad or Embedded browser. UnitloadUrl(String url)UnitloadData(String data, String mimeType, String encoding)BooleanonTouchEvent(MotionEvent event)final UnitonCloseClick()final UnitonReloadClick()BooleancanRedirectExternally()Defines if user can be redirected externally to other apps. BooleanhasUserInteracted()Defines if sdk is permitted to handle calls from javascript via mraid.open, imraid.openWithoutTracker, imraid.openExternal, imai.openEmbedded, location.href, location.assign, location.replace, location navigation.navigate, navigation. UnitsendFraudBeaconAndTelemetryEvent(String api)This method sends the fraudBeacon in telemetry. -
Methods inherited from class com.inmobi.ads.containers.BaseWebView
getLandingPageHandler -
Methods inherited from class android.webkit.WebView
addJavascriptInterface, autofill, canGoBack, canGoBackOrForward, canGoForward, canZoomIn, canZoomOut, capturePicture, clearCache, clearFormData, clearHistory, clearMatches, clearSslPreferences, clearView, computeScroll, copyBackForwardList, createPrintDocumentAdapter, createPrintDocumentAdapter, createWebMessageChannel, destroy, dispatchCreateViewTranslationRequest, dispatchKeyEvent, documentHasImages, evaluateJavascript, findAll, findAllAsync, findFocus, findNext, flingScroll, freeMemory, getAccessibilityClassName, getAccessibilityNodeProvider, getCertificate, getContentHeight, getFavicon, getHandler, getHitTestResult, getHttpAuthUsernamePassword, getOriginalUrl, getProgress, getRendererPriorityWaivedWhenNotVisible, getRendererRequestedPriority, getScale, getSettings, getTextClassifier, getTitle, getUrl, getWebChromeClient, getWebViewClient, getWebViewLooper, getWebViewRenderProcess, getWebViewRenderProcessClient, goBack, goBackOrForward, goForward, invokeZoomPicker, isPrivateBrowsingEnabled, isVisibleToUserForAutofill, loadDataWithBaseURL, loadUrl, onApplyWindowInsets, onCheckIsTextEditor, onChildViewAdded, onChildViewRemoved, onCreateInputConnection, onCreateVirtualViewTranslationRequests, onDragEvent, onFinishTemporaryDetach, onGenericMotionEvent, onGlobalFocusChanged, onHoverEvent, onKeyDown, onKeyMultiple, onKeyUp, onPause, onProvideAutofillVirtualStructure, onProvideContentCaptureStructure, onProvideVirtualStructure, onResolvePointerIcon, onResume, onStartTemporaryDetach, onTrackballEvent, onVirtualViewTranslationResponses, onWindowFocusChanged, overlayHorizontalScrollbar, overlayVerticalScrollbar, pageDown, pageUp, pauseTimers, performLongClick, postUrl, postVisualStateCallback, postWebMessage, reload, removeJavascriptInterface, requestChildRectangleOnScreen, requestFocus, requestFocusNodeHref, requestImageRef, restoreState, resumeTimers, savePassword, saveState, saveWebArchive, saveWebArchive, setBackgroundColor, setCertificate, setDownloadListener, setFindListener, setHorizontalScrollbarOverlay, setHttpAuthUsernamePassword, setInitialScale, setLayerType, setLayoutParams, setMapTrackballToArrowKeys, setNetworkAvailable, setOverScrollMode, setPictureListener, setRendererPriorityPolicy, setScrollBarStyle, setTextClassifier, setVerticalScrollbarOverlay, setWebChromeClient, setWebViewClient, setWebViewRenderProcessClient, setWebViewRenderProcessClient, shouldDelayChildPressedState, showFindDialog, stopLoading, zoomBy, zoomIn, zoomOut -
Methods inherited from class android.view.View
addFocusables, addOnAttachStateChangeListener, addOnLayoutChangeListener, addOnUnhandledKeyEventListener, animate, announceForAccessibility, autofill, bringToFront, buildDrawingCache, buildDrawingCache, buildLayer, callOnClick, canResolveLayoutDirection, canResolveTextAlignment, canResolveTextDirection, canScrollHorizontally, canScrollVertically, cancelDragAndDrop, cancelLongPress, cancelPendingInputEvents, checkInputConnectionProxy, clearAnimation, clearPendingCredentialRequest, clearViewTranslationCallback, computeSystemWindowInsets, createAccessibilityNodeInfo, createContextMenu, destroyDrawingCache, dispatchGenericMotionEvent, dispatchNestedFling, dispatchNestedPreFling, dispatchNestedPrePerformAccessibilityAction, dispatchNestedPreScroll, dispatchNestedScroll, dispatchPopulateAccessibilityEvent, draw, drawableHotspotChanged, findOnBackInvokedDispatcher, findViewById, findViewWithTag, focusSearch, forceHasOverlappingRendering, forceLayout, generateDisplayHash, getAccessibilityDelegate, getAccessibilityLiveRegion, getAccessibilityPaneTitle, getAccessibilityTraversalAfter, getAccessibilityTraversalBefore, getAllowedHandwritingDelegatePackageName, getAllowedHandwritingDelegatorPackageName, getAlpha, getAnimation, getAnimationMatrix, getApplicationWindowToken, getAttributeResolutionStack, getAttributeSourceResourceMap, getAutofillHints, getAutofillId, getAutofillType, getAutofillValue, getBackground, getBackgroundTintBlendMode, getBackgroundTintList, getBackgroundTintMode, getBaseline, getBottom, getCameraDistance, getClipBounds, getClipBounds, getClipToOutline, getContentCaptureSession, getContentDescription, getContentSensitivity, getContext, getDefaultFocusHighlightEnabled, getDisplay, getDrawableState, getDrawingCache, getDrawingCache, getDrawingCacheBackgroundColor, getDrawingCacheQuality, getDrawingRect, getDrawingTime, getElevation, getExplicitStyle, getFilterTouchesWhenObscured, getFitsSystemWindows, getFocusable, getFocusables, getFocusedRect, getForeground, getForegroundGravity, getForegroundTintBlendMode, getForegroundTintList, getForegroundTintMode, getFrameContentVelocity, getGlobalVisibleRect, getGlobalVisibleRect, getHandwritingBoundsOffsetBottom, getHandwritingBoundsOffsetLeft, getHandwritingBoundsOffsetRight, getHandwritingBoundsOffsetTop, getHandwritingDelegateFlags, getHandwritingDelegatorCallback, getHasOverlappingRendering, getHeight, getHitRect, getHorizontalFadingEdgeLength, getHorizontalScrollbarThumbDrawable, getHorizontalScrollbarTrackDrawable, getId, getImportantForAccessibility, getImportantForAutofill, getImportantForContentCapture, getKeepScreenOn, getKeyDispatcherState, getLabelFor, getLayerType, getLayoutDirection, getLayoutParams, getLeft, getLocalVisibleRect, getLocationInSurface, getLocationInWindow, getLocationOnScreen, getMatrix, getMeasuredHeight, getMeasuredHeightAndState, getMeasuredState, getMeasuredWidth, getMeasuredWidthAndState, getMinimumHeight, getMinimumWidth, getNextClusterForwardId, getNextFocusDownId, getNextFocusForwardId, getNextFocusLeftId, getNextFocusRightId, getNextFocusUpId, getOnFocusChangeListener, getOutlineAmbientShadowColor, getOutlineProvider, getOutlineSpotShadowColor, getOverScrollMode, getPaddingBottom, getPaddingEnd, getPaddingLeft, getPaddingRight, getPaddingStart, getPaddingTop, getParent, getParentForAccessibility, getPendingCredentialCallback, getPendingCredentialRequest, getPivotX, getPivotY, getPointerIcon, getPreferKeepClearRects, getReceiveContentMimeTypes, getRequestedFrameRate, getResources, getRevealOnFocusHint, getRight, getRootSurfaceControl, getRootView, getRootWindowInsets, getRotation, getRotationX, getRotationY, getScaleX, getScaleY, getScrollBarDefaultDelayBeforeFade, getScrollBarFadeDuration, getScrollBarSize, getScrollBarStyle, getScrollCaptureHint, getScrollIndicators, getScrollX, getScrollY, getSolidColor, getSourceLayoutResId, getStateDescription, getStateListAnimator, getSupplementalDescription, getSystemGestureExclusionRects, getSystemUiVisibility, getTag, getTag, getTextAlignment, getTextDirection, getTooltipText, getTop, getTouchDelegate, getTouchables, getTransitionAlpha, getTransitionName, getTranslationX, getTranslationY, getTranslationZ, getUniqueDrawingId, getVerticalFadingEdgeLength, getVerticalScrollbarPosition, getVerticalScrollbarThumbDrawable, getVerticalScrollbarTrackDrawable, getVerticalScrollbarWidth, getViewTranslationResponse, getViewTreeObserver, getVisibility, getWidth, getWindowId, getWindowInsetsController, getWindowSystemUiVisibility, getWindowToken, getWindowVisibility, getWindowVisibleDisplayFrame, getX, getY, getZ, hasExplicitFocusable, hasFocusable, hasNestedScrollingParent, hasOnClickListeners, hasOnLongClickListeners, hasOverlappingRendering, hasPointerCapture, hasWindowFocus, invalidate, invalidate, invalidate, invalidateDrawable, invalidateOutline, isAccessibilityDataSensitive, isAccessibilityFocused, isAccessibilityHeading, isActivated, isAttachedToWindow, isAutoHandwritingEnabled, isClickable, isContentSensitive, isContextClickable, isCredential, isDirty, isDrawingCacheEnabled, isDuplicateParentStateEnabled, isEnabled, isFocusable, isFocusableInTouchMode, isFocused, isFocusedByDefault, isForceDarkAllowed, isHandwritingDelegate, isHapticFeedbackEnabled, isHardwareAccelerated, isHorizontalFadingEdgeEnabled, isHorizontalScrollBarEnabled, isHovered, isImportantForAccessibility, isImportantForAutofill, isImportantForContentCapture, isInEditMode, isInLayout, isInTouchMode, isKeyboardNavigationCluster, isLaidOut, isLayoutDirectionResolved, isLayoutRequested, isLongClickable, isNestedScrollingEnabled, isOpaque, isPaddingRelative, isPivotSet, isPreferKeepClear, isPressed, isSaveEnabled, isSaveFromParentEnabled, isScreenReaderFocusable, isScrollContainer, isScrollbarFadingEnabled, isSelected, isShowingLayoutBounds, isShown, isSoundEffectsEnabled, isTemporarilyDetached, isTextAlignmentResolved, isTextDirectionResolved, isVerticalFadingEdgeEnabled, isVerticalScrollBarEnabled, keyboardNavigationClusterSearch, measure, offsetLeftAndRight, offsetTopAndBottom, onCancelPendingInputEvents, onCapturedPointerEvent, onCreateViewTranslationRequest, onDrawForeground, onFilterTouchEventForSecurity, onHoverChanged, onInitializeAccessibilityEvent, onInitializeAccessibilityNodeInfo, onKeyLongPress, onKeyPreIme, onKeyShortcut, onPointerCaptureChange, onPopulateAccessibilityEvent, onProvideAutofillStructure, onProvideStructure, onReceiveContent, onRtlPropertiesChanged, onScreenStateChanged, onScrollCaptureSearch, onViewTranslationResponse, onVisibilityAggregated, onWindowSystemUiVisibilityChanged, performAccessibilityAction, performClick, performContextClick, performContextClick, performHapticFeedback, performHapticFeedback, performHapticFeedback, performLongClick, performReceiveContent, playSoundEffect, post, postDelayed, postInvalidate, postInvalidate, postInvalidateDelayed, postInvalidateDelayed, postInvalidateOnAnimation, postInvalidateOnAnimation, postOnAnimation, postOnAnimationDelayed, refreshDrawableState, releasePointerCapture, removeCallbacks, removeOnAttachStateChangeListener, removeOnLayoutChangeListener, removeOnUnhandledKeyEventListener, reportAppJankStats, requestApplyInsets, requestFitSystemWindows, requestFocus, requestFocus, requestFocusFromTouch, requestLayout, requestPointerCapture, requestPointerCapture, requestRectangleOnScreen, requestRectangleOnScreen, requestRectangleOnScreen, requestUnbufferedDispatch, requestUnbufferedDispatch, requireViewById, resetPivot, restoreHierarchyState, saveAttributeDataForStyleable, saveHierarchyState, scheduleDrawable, scrollBy, scrollTo, sendAccessibilityEvent, sendAccessibilityEventUnchecked, setAccessibilityDataSensitive, setAccessibilityDelegate, setAccessibilityHeading, setAccessibilityLiveRegion, setAccessibilityPaneTitle, setAccessibilityTraversalAfter, setAccessibilityTraversalBefore, setActivated, setAllowClickWhenDisabled, setAllowedHandwritingDelegatePackage, setAllowedHandwritingDelegatorPackage, setAlpha, setAnimation, setAnimationMatrix, setAutoHandwritingEnabled, setAutofillHints, setAutofillId, setBackground, setBackgroundDrawable, setBackgroundResource, setBackgroundTintBlendMode, setBackgroundTintList, setBackgroundTintMode, setBottom, setCameraDistance, setClickable, setClipBounds, setClipToOutline, setContentCaptureSession, setContentDescription, setContentSensitivity, setContextClickable, setDefaultFocusHighlightEnabled, setDrawingCacheBackgroundColor, setDrawingCacheEnabled, setDrawingCacheQuality, setDuplicateParentStateEnabled, setElevation, setEnabled, setFadingEdgeLength, setFilterTouchesWhenObscured, setFitsSystemWindows, setFocusable, setFocusable, setFocusableInTouchMode, setFocusedByDefault, setForceDarkAllowed, setForeground, setForegroundGravity, setForegroundTintBlendMode, setForegroundTintList, setForegroundTintMode, setFrameContentVelocity, setHandwritingBoundsOffsets, setHandwritingDelegateFlags, setHandwritingDelegatorCallback, setHapticFeedbackEnabled, setHasTransientState, setHorizontalFadingEdgeEnabled, setHorizontalScrollBarEnabled, setHorizontalScrollbarThumbDrawable, setHorizontalScrollbarTrackDrawable, setHovered, setId, setImportantForAccessibility, setImportantForAutofill, setImportantForContentCapture, setIsCredential, setIsHandwritingDelegate, setKeepScreenOn, setKeyboardNavigationCluster, setLabelFor, setLayerPaint, setLayoutDirection, setLeft, setLeftTopRightBottom, setLongClickable, setMinimumHeight, setMinimumWidth, setNestedScrollingEnabled, setNextClusterForwardId, setNextFocusDownId, setNextFocusForwardId, setNextFocusLeftId, setNextFocusRightId, setNextFocusUpId, setOnApplyWindowInsetsListener, setOnCapturedPointerListener, setOnClickListener, setOnContextClickListener, setOnCreateContextMenuListener, setOnDragListener, setOnFocusChangeListener, setOnGenericMotionListener, setOnHoverListener, setOnKeyListener, setOnLongClickListener, setOnReceiveContentListener, setOnScrollChangeListener, setOnSystemUiVisibilityChangeListener, setOnTouchListener, setOutlineAmbientShadowColor, setOutlineProvider, setOutlineSpotShadowColor, setPadding, setPaddingRelative, setPendingCredentialRequest, setPivotX, setPivotY, setPointerIcon, setPreferKeepClear, setPreferKeepClearRects, setPressed, setRenderEffect, setRevealOnFocusHint, setRight, setRotation, setRotationX, setRotationY, setSaveEnabled, setSaveFromParentEnabled, setScaleX, setScaleY, setScreenReaderFocusable, setScrollBarDefaultDelayBeforeFade, setScrollBarFadeDuration, setScrollBarSize, setScrollCaptureCallback, setScrollCaptureHint, setScrollContainer, setScrollIndicators, setScrollIndicators, setScrollX, setScrollY, setScrollbarFadingEnabled, setSelected, setSoundEffectsEnabled, setStateDescription, setStateListAnimator, setSupplementalDescription, setSystemGestureExclusionRects, setSystemUiVisibility, setTag, setTag, setTextAlignment, setTextDirection, setTooltipText, setTop, setTouchDelegate, setTransitionAlpha, setTransitionName, setTransitionVisibility, setTranslationX, setTranslationY, setTranslationZ, setVerticalFadingEdgeEnabled, setVerticalScrollBarEnabled, setVerticalScrollbarPosition, setVerticalScrollbarThumbDrawable, setVerticalScrollbarTrackDrawable, setViewTranslationCallback, setVisibility, setWillNotCacheDrawing, setWillNotDraw, setX, setY, setZ, showContextMenu, showContextMenu, startActionMode, startActionMode, startAnimation, startDrag, startDragAndDrop, startNestedScroll, stopNestedScroll, toString, transformMatrixToGlobal, transformMatrixToLocal, unscheduleDrawable, unscheduleDrawable, updateDragShadow, willNotCacheDrawing, willNotDraw -
Methods inherited from class android.view.ViewGroup
addChildrenForAccessibility, addExtraDataToAccessibilityNodeInfo, addFocusables, addKeyboardNavigationClusters, addStatesFromChildren, addTouchables, addView, addView, addView, addView, addView, bringChildToFront, childDrawableStateChanged, childHasTransientStateChanged, clearChildFocus, clearDisappearingChildren, clearFocus, dispatchApplyWindowInsets, dispatchCapturedPointerEvent, dispatchConfigurationChanged, dispatchDisplayHint, dispatchDragEvent, dispatchDrawableHotspotChanged, dispatchFinishTemporaryDetach, dispatchKeyEventPreIme, dispatchKeyShortcutEvent, dispatchPointerCaptureChanged, dispatchProvideAutofillStructure, dispatchProvideStructure, dispatchScrollCaptureSearch, dispatchSetActivated, dispatchSetSelected, dispatchStartTemporaryDetach, dispatchSystemUiVisibilityChanged, dispatchTouchEvent, dispatchTrackballEvent, dispatchUnhandledMove, dispatchWindowFocusChanged, dispatchWindowInsetsAnimationEnd, dispatchWindowInsetsAnimationPrepare, dispatchWindowInsetsAnimationProgress, dispatchWindowInsetsAnimationStart, dispatchWindowSystemUiVisiblityChanged, dispatchWindowVisibilityChanged, endViewTransition, findOnBackInvokedDispatcherForChild, findViewsWithText, focusSearch, focusableViewAvailable, gatherTransparentRegion, getChildAt, getChildCount, getChildDrawingOrder, getChildVisibleRect, getClipChildren, getClipToPadding, getDescendantFocusability, getFocusedChild, getLayoutAnimation, getLayoutAnimationListener, getLayoutMode, getLayoutTransition, getNestedScrollAxes, getOverlay, getPersistentDrawingCache, getTouchscreenBlocksFocus, hasFocus, hasTransientState, indexOfChild, invalidateChild, invalidateChildInParent, isAlwaysDrawnWithCacheEnabled, isAnimationCacheEnabled, isLayoutSuppressed, isMotionEventSplittingEnabled, isTransitionGroup, jumpDrawablesToCurrentState, layout, notifySubtreeAccessibilityStateChanged, offsetDescendantRectToMyCoords, offsetRectIntoDescendantCoords, onDescendantInvalidated, onInterceptHoverEvent, onInterceptTouchEvent, onNestedFling, onNestedPreFling, onNestedPrePerformAccessibilityAction, onNestedPreScroll, onNestedScroll, onNestedScrollAccepted, onRequestSendAccessibilityEvent, onStartNestedScroll, onStopNestedScroll, onViewAdded, onViewRemoved, propagateRequestedFrameRate, recomputeViewAttributes, removeAllViews, removeAllViewsInLayout, removeView, removeViewAt, removeViewInLayout, removeViews, removeViewsInLayout, requestChildFocus, requestDisallowInterceptTouchEvent, requestSendAccessibilityEvent, requestTransparentRegion, restoreDefaultFocus, scheduleLayoutAnimation, setAddStatesFromChildren, setAlwaysDrawnWithCacheEnabled, setAnimationCacheEnabled, setClipChildren, setClipToPadding, setDescendantFocusability, setLayoutAnimation, setLayoutAnimationListener, setLayoutMode, setLayoutTransition, setMotionEventSplittingEnabled, setOnHierarchyChangeListener, setPersistentDrawingCache, setRequestedFrameRate, setTouchscreenBlocksFocus, setTransitionGroup, setWindowInsetsAnimationCallback, showContextMenuForChild, showContextMenuForChild, startActionModeForChild, startActionModeForChild, startLayoutAnimation, startViewTransition, suppressLayout, updateViewLayout -
Methods inherited from class android.view.ViewParent
requestChildRectangleOnScreen -
Methods inherited from class android.widget.AbsoluteLayout
generateLayoutParams -
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
Constructor Detail
-
EmbeddedBrowserWebView
EmbeddedBrowserWebView(Context context, Long viewTouchTimestamp, String placementType, String impressionId, String creativeId, Function1<JSONObject, Unit> onLpLifecycleEvent, InMobiLogger logger)
-
-
Method Detail
-
getLandingPageTelemetryControlInfo
final LandingPageTelemetryControlInfo getLandingPageTelemetryControlInfo()
-
setLandingPageTelemetryControlInfo
final Unit setLandingPageTelemetryControlInfo(LandingPageTelemetryControlInfo landingPageTelemetryControlInfo)
-
getViewTouchTimestamp
Long getViewTouchTimestamp()
This returns the View Touch Timestamp of the user on the ad or Embedded browser. This is used to validate redirections if they occur within the permissible time defined by AdConfig.RenderConfig.userTouchResetTime
-
setViewTouchTimestamp
Unit setViewTouchTimestamp(Long viewTouchTimestamp)
This returns the View Touch Timestamp of the user on the ad or Embedded browser. This is used to validate redirections if they occur within the permissible time defined by AdConfig.RenderConfig.userTouchResetTime
-
onTouchEvent
Boolean onTouchEvent(MotionEvent event)
-
onCloseClick
final Unit onCloseClick()
-
onReloadClick
final Unit onReloadClick()
-
canRedirectExternally
Boolean canRedirectExternally()
Defines if user can be redirected externally to other apps. This check has been added as publishers are reporting redirections happening on inmobi from MAX Dashboard.
This method is to take into consideration of 2 checks
Has user made an actual touch on the ad ?
Is auto redirection allowed from Ad Config.
This is to be removed in future, once the cause of the redirections have been identified.
- Returns:
true if user can redirect to an external app and false otherwise.
-
hasUserInteracted
Boolean hasUserInteracted()
Defines if sdk is permitted to handle calls from javascript via mraid.open, imraid.openWithoutTracker, imraid.openExternal, imai.openEmbedded, location.href, location.assign, location.replace, location navigation.navigate, navigation.reload
This method is to take into consideration of 3 checks
Has user made an actual touch on the ad ?
Is auto redirection allowed from AdConfig.RenderingConfig.autoRedirectionEnforcement
If Ad Response allows auto redirection
- Returns:
true if user can redirect to an external app and false otherwise.
-
sendFraudBeaconAndTelemetryEvent
Unit sendFraudBeaconAndTelemetryEvent(String api)
This method sends the fraudBeacon in telemetry.
-
-
-
-