SharedUiContainer


@ExperimentalFeatures.SharedUiPresentationApi
class SharedUiContainer : ViewGroup


SharedUiContainer is a ViewGroup that's designed to host 'shared UI', meaning it can handle both client-owned and provider-owned UI (via SandboxedSdkViews). The container also allows to register its child views as assets. Assets can be registered either before or after the session is open.

Children: The container should be used to host a single direct child view. However, it allows adding more than one child view to it. All child views added to SharedUiContainer are placed in the top left corner of the container plus padding.

Session management: The container will maintain a session to communicate with a sandboxed SDK for lifecycle management. To open a session, a SharedUiAdapter must be set using setAdapter, and the container must be attached to a visible window and have non-zero dimensions.

When setAdapter is called, any existing session will be closed and all registered assets will be released.

Provider-owned UI: All registered child SandboxedSdkViews will maintain their own sessions for provider-owned UI presentation. For all SandboxedSdkViews registered with SandboxedUiAdapters, SharedUiContainer will set corresponding adapters when a shared UI session opens. For any SandboxedSdkViews registered when the session is open, adapters will be set immediately. The container will close any open SandboxedSdkView sessions before closing its own session.

Asset registration: Client-owned views and SandboxedSdkViews can be registered as assets using registerSharedUiAsset and unregistered using unregisterSharedUiAsset.

Summary

Public constructors

SharedUiContainer(context: Context, attrs: AttributeSet?)

Public functions

Boolean

Registers a SharedUiAsset, that represents a native ad asset, on SharedUiContainer.

Unit
setAdapter(sharedUiAdapter: SharedUiAdapter?)

Sets SharedUiAdapter to maintain a session between SharedUiContainer and a sandboxed SDK.

Boolean

Unregisters a SharedUiAsset associated with a given view from the container.

Protected functions

open Unit
open Unit
open Unit
onLayout(changed: Boolean, left: Int, top: Int, right: Int, bottom: Int)

Lays out the container's children in the top left corner with their measured sizes.

open Unit
onMeasure(widthMeasureSpec: Int, heightMeasureSpec: Int)

Measures the container and its children.

open Unit

Inherited functions

From android.view.View
open Unit
open Unit
open Unit
open Unit
open ViewPropertyAnimator
open Unit
open Unit
open Unit
open Boolean
open Boolean
open Boolean
open Unit
open Unit

This function is deprecated. Deprecated in Java

open Unit

This function is deprecated. Deprecated in Java

open Unit
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
Unit
open Unit
Unit
open Boolean
open Unit
open Unit
open Int
open Int
open Int
open Unit
open WindowInsets
open Int
open Int
open Int
open AccessibilityNodeInfo
open Unit
open Unit

This function is deprecated. Deprecated in Java

open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
dispatchNestedPreScroll(p0: Int, p1: Int, p2: IntArray?, p3: IntArray?)
open Boolean
dispatchNestedScroll(p0: Int, p1: Int, p2: Int, p3: Int, p4: IntArray?)
open Boolean
open Unit
draw(p0: Canvas)
open Unit
OnBackInvokedDispatcher?
T
<T : View> findViewById(p0: Int)
T
<T : View> findViewWithTag(p0: Any)
open Boolean

This function is deprecated. Deprecated in Java

open View
open Unit
open Unit
open Unit
generateDisplayHash(
    p0: String,
    p1: Rect?,
    p2: Executor,
    p3: DisplayHashResultCallback
)
open View.AccessibilityDelegate
open Int
open AccessibilityNodeProvider
open CharSequence?
open Int
open Int
open String?
open String?
open Float
@ViewDebug.ExportedProperty(category = "drawing")
getAlpha()
open Animation
open Matrix?
open IBinder
open IntArray
open MutableMap<IntInt>
open Array<String>?
AutofillId
open Int
open AutofillValue?
open Drawable
open BlendMode?
open ColorStateList?
open PorterDuff.Mode?
open Int
@ViewDebug.ExportedProperty(category = "layout")
getBaseline()
Int
open Float
open Int
open Float
open Rect
open Boolean
Boolean
ContentCaptureSession?
open CharSequence
@ViewDebug.ExportedProperty(category = "accessibility")
getContentDescription()
Context
open ContextMenu.ContextMenuInfo
Boolean
open Display
IntArray
open Bitmap

This function is deprecated. Deprecated in Java

open Bitmap

This function is deprecated. Deprecated in Java

open Int

This function is deprecated. Deprecated in Java

open Int

This function is deprecated. Deprecated in Java

open Unit
open Long
open Float
@ViewDebug.ExportedProperty(category = "drawing")
getElevation()
open Int
open Boolean
open Boolean
open Int
@ViewDebug.ExportedProperty(mapping = [@ViewDebug.IntToString(from = 0, to = "NOT_FOCUSABLE"), @ViewDebug.IntToString(from = 1, to = "FOCUSABLE"), @ViewDebug.IntToString(from = 16, to = "FOCUSABLE_AUTO")], category = "focus")
getFocusable()
open ArrayList<View>
open Unit
open Drawable
open Int
open BlendMode?
open ColorStateList?
open PorterDuff.Mode?
Boolean
open Boolean
open Handler
open Float
open Float
open Float
open Float
open Runnable?
Boolean
Int
@ViewDebug.ExportedProperty(category = "layout")
getHeight()
open Unit
open Int
open Int
open Drawable?
open Drawable?
open Int
open Int
@ViewDebug.ExportedProperty(category = "accessibility", mapping = [@ViewDebug.IntToString(from = 0, to = "auto"), @ViewDebug.IntToString(from = 1, to = "yes"), @ViewDebug.IntToString(from = 2, to = "no"), @ViewDebug.IntToString(from = 4, to = "noHideDescendants")])
getImportantForAccessibility()
open Int
@ViewDebug.ExportedProperty(mapping = [@ViewDebug.IntToString(from = 0, to = "auto"), @ViewDebug.IntToString(from = 1, to = "yes"), @ViewDebug.IntToString(from = 2, to = "no"), @ViewDebug.IntToString(from = 4, to = "yesExcludeDescendants"), @ViewDebug.IntToString(from = 8, to = "noExcludeDescendants")])
getImportantForAutofill()
open Int
@ViewDebug.ExportedProperty(mapping = [@ViewDebug.IntToString(from = 0, to = "auto"), @ViewDebug.IntToString(from = 1, to = "yes"), @ViewDebug.IntToString(from = 2, to = "no"), @ViewDebug.IntToString(from = 4, to = "yesExcludeDescendants"), @ViewDebug.IntToString(from = 8, to = "noExcludeDescendants")])
getImportantForContentCapture()
open Boolean
open KeyEvent.DispatcherState
open Int
@ViewDebug.ExportedProperty(category = "accessibility")
getLabelFor()
open Int
open Int
@ViewDebug.ExportedProperty(category = "layout", mapping = [@ViewDebug.IntToString(from = 0, to = "RESOLVED_DIRECTION_LTR"), @ViewDebug.IntToString(from = 1, to = "RESOLVED_DIRECTION_RTL")])
getLayoutDirection()
open ViewGroup.LayoutParams
@ViewDebug.ExportedProperty(deepExport = true, prefix = "layout_")
getLayoutParams()
Int
open Float
open Int
Boolean
open Unit
open Unit
open Unit
open Matrix
Int
Int
@ViewDebug.ExportedProperty(category = "measurement", flagMapping = [@ViewDebug.FlagToString(mask = -16777216, equals = 16777216, name = "MEASURED_STATE_TOO_SMALL")])
getMeasuredHeightAndState()
Int
Int
Int
@ViewDebug.ExportedProperty(category = "measurement", flagMapping = [@ViewDebug.FlagToString(mask = -16777216, equals = 16777216, name = "MEASURED_STATE_TOO_SMALL")])
getMeasuredWidthAndState()
open Int
open Int
open Int
open Int
open Int
open Int
open Int
open Int
open View.OnFocusChangeListener
open Int
open ViewOutlineProvider
open Int
open Int
open Int
open Int
open Int
open Int
open Int
open Int
ViewParent
open ViewParent
open Float
@ViewDebug.ExportedProperty(category = "drawing")
getPivotX()
open Float
@ViewDebug.ExportedProperty(category = "drawing")
getPivotY()
open PointerIcon
MutableList<Rect>
open Array<String>?
open Resources
Boolean
Int
open Float
open Int
open AttachedSurfaceControl?
open View
open WindowInsets
open Float
@ViewDebug.ExportedProperty(category = "drawing")
getRotation()
open Float
@ViewDebug.ExportedProperty(category = "drawing")
getRotationX()
open Float
@ViewDebug.ExportedProperty(category = "drawing")
getRotationY()
open Float
@ViewDebug.ExportedProperty(category = "drawing")
getScaleX()
open Float
@ViewDebug.ExportedProperty(category = "drawing")
getScaleY()
open Int
open Int
open Int
open Int
@ViewDebug.ExportedProperty(mapping = [@ViewDebug.IntToString(from = 0, to = "INSIDE_OVERLAY"), @ViewDebug.IntToString(from = 16777216, to = "INSIDE_INSET"), @ViewDebug.IntToString(from = 33554432, to = "OUTSIDE_OVERLAY"), @ViewDebug.IntToString(from = 50331648, to = "OUTSIDE_INSET")])
getScrollBarStyle()
open Int
open Int
Int
Int
open Int
@ViewDebug.ExportedProperty(category = "drawing")
getSolidColor()
open Int
CharSequence?
@ViewDebug.ExportedProperty(category = "accessibility")
getStateDescription()
open StateListAnimator
open Int
open Int
open MutableList<Rect>
open Int

This function is deprecated. Deprecated in Java

open Any
open Any
getTag(p0: Int)
open Int
@ViewDebug.ExportedProperty(category = "text", mapping = [@ViewDebug.IntToString(from = 0, to = "INHERIT"), @ViewDebug.IntToString(from = 1, to = "GRAVITY"), @ViewDebug.IntToString(from = 2, to = "TEXT_START"), @ViewDebug.IntToString(from = 3, to = "TEXT_END"), @ViewDebug.IntToString(from = 4, to = "CENTER"), @ViewDebug.IntToString(from = 5, to = "VIEW_START"), @ViewDebug.IntToString(from = 6, to = "VIEW_END")])
getTextAlignment()
open Int
@ViewDebug.ExportedProperty(category = "text", mapping = [@ViewDebug.IntToString(from = 0, to = "INHERIT"), @ViewDebug.IntToString(from = 1, to = "FIRST_STRONG"), @ViewDebug.IntToString(from = 2, to = "ANY_RTL"), @ViewDebug.IntToString(from = 3, to = "LTR"), @ViewDebug.IntToString(from = 4, to = "RTL"), @ViewDebug.IntToString(from = 5, to = "LOCALE"), @ViewDebug.IntToString(from = 6, to = "FIRST_STRONG_LTR"), @ViewDebug.IntToString(from = 7, to = "FIRST_STRONG_RTL")])
getTextDirection()
open CharSequence?
Int
open Float
open Int
open TouchDelegate
open ArrayList<View>
open Float
open String
open Float
open Float
open Float
open Long
open Int
open Int
open Drawable?
open Drawable?
open Int
open ViewTranslationResponse?
open ViewTreeObserver
open Int
@ViewDebug.ExportedProperty(mapping = [@ViewDebug.IntToString(from = 0, to = "VISIBLE"), @ViewDebug.IntToString(from = 4, to = "INVISIBLE"), @ViewDebug.IntToString(from = 8, to = "GONE")])
getVisibility()
Int
@ViewDebug.ExportedProperty(category = "layout")
getWidth()
open Int
open WindowId
open WindowInsetsController?
open Int

This function is deprecated. Deprecated in Java

open IBinder
open Int
open Unit
open Float
@ViewDebug.ExportedProperty(category = "drawing")
getX()
open Float
@ViewDebug.ExportedProperty(category = "drawing")
getY()
open Float
@ViewDebug.ExportedProperty(category = "drawing")
getZ()
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Unit
open Unit

This function is deprecated. Deprecated in Java

open Unit
invalidate(p0: Int, p1: Int, p2: Int, p3: Int)

This function is deprecated. Deprecated in Java

open Unit
open Unit
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean

This function is deprecated. Deprecated in Java

open Boolean
open Boolean
Boolean
@ViewDebug.ExportedProperty(category = "focus")
isFocusable()
Boolean
open Boolean
@ViewDebug.ExportedProperty(category = "focus")
isFocused()
Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
Boolean
Boolean
open Boolean
open Boolean
open Boolean
Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
@ViewDebug.ExportedProperty(category = "drawing")
isOpaque()
open Boolean
open Boolean
open Boolean
Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
Boolean
open Boolean
open Boolean
Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open View
Unit
measure(p0: Int, p1: Int)
open Unit
open Unit
open Unit
open Unit
open WindowInsets
open Unit
open Boolean
open Boolean
open Unit
open Unit
open InputConnection
open Unit
open Unit
open Unit
open Boolean
open Unit
open Unit
Unit
open Boolean
open Unit
open Unit
open Unit
onFocusChanged(p0: Boolean, p1: Int, p2: Rect?)
open Boolean
open Unit
open Boolean
open Unit
open Unit
open Boolean
onKeyDown(p0: Int, p1: KeyEvent)
open Boolean
open Boolean
onKeyMultiple(p0: Int, p1: Int, p2: KeyEvent)
open Boolean
onKeyPreIme(p0: Int, p1: KeyEvent)
open Boolean
open Boolean
onKeyUp(p0: Int, p1: KeyEvent)
open Unit
onOverScrolled(p0: Int, p1: Int, p2: Boolean, p3: Boolean)
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open ContentInfo?
open Unit
open Unit
open Parcelable?
open Unit
open Unit
onScrollCaptureSearch(
    p0: Rect,
    p1: Point,
    p2: Consumer<ScrollCaptureTarget>
)
open Unit
onScrollChanged(p0: Int, p1: Int, p2: Int, p3: Int)
open Boolean
open Unit
onSizeChanged(p0: Int, p1: Int, p2: Int, p3: Int)
open Unit
open Boolean
open Boolean
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit

This function is deprecated. Deprecated in Java

open Boolean
overScrollBy(
    p0: Int,
    p1: Int,
    p2: Int,
    p3: Int,
    p4: Int,
    p5: Int,
    p6: Int,
    p7: Int,
    p8: Boolean
)
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open ContentInfo?
open Unit
open Boolean
open Boolean
open Unit
open Unit
postInvalidate(p0: Int, p1: Int, p2: Int, p3: Int)
open Unit
open Unit
postInvalidateDelayed(p0: Long, p1: Int, p2: Int, p3: Int, p4: Int)
open Unit
open Unit
postInvalidateOnAnimation(p0: Int, p1: Int, p2: Int, p3: Int)
open Unit
open Unit
open Unit
open Unit
open Boolean
open Unit
open Unit
open Unit
open Unit
open Unit

This function is deprecated. Deprecated in Java

Boolean
Boolean
Boolean
open Unit
open Unit
open Boolean
open Boolean
Unit
Unit
T
<T : View> requireViewById(p0: Int)
open Unit
open Unit
Unit
saveAttributeDataForStyleable(
    p0: Context,
    p1: IntArray,
    p2: AttributeSet?,
    p3: TypedArray,
    p4: Int,
    p5: Int
)
open Unit
open Unit
open Unit
scrollBy(p0: Int, p1: Int)
open Unit
scrollTo(p0: Int, p1: Int)
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
setAutofillHints(vararg p0: String?)
open Unit
open Unit
open Unit
open Unit

This function is deprecated. Deprecated in Java

open Unit
open Unit
open Unit
open Unit
Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit

This function is deprecated. Deprecated in Java

open Unit

This function is deprecated. Deprecated in Java

open Unit

This function is deprecated. Deprecated in Java

open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
setId(p0: Int)
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
setLayerType(p0: Int, p1: Paint?)
open Unit
open Unit
Unit
setLeft(p0: Int)
Unit
setLeftTopRightBottom(p0: Int, p1: Int, p2: Int, p3: Int)
open Unit
Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit

This function is deprecated. Deprecated in Java

open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
setPadding(p0: Int, p1: Int, p2: Int, p3: Int)
open Unit
setPaddingRelative(p0: Int, p1: Int, p2: Int, p3: Int)
open Unit
open Unit
open Unit
Unit
Unit
open Unit
open Unit
Unit
Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit

This function is deprecated. Deprecated in Java

open Unit
setTag(p0: Any)
open Unit
setTag(p0: Int, p1: Any)
open Unit
open Unit
open Unit
Unit
setTop(p0: Int)
open Unit
open Unit
Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit

This function is deprecated. Deprecated in Java

open Unit
open Unit
setX(p0: Float)
open Unit
setY(p0: Float)
open Unit
setZ(p0: Float)
open Boolean
open Boolean
open ActionMode
open ActionMode
open Unit
Boolean
startDrag(p0: ClipData, p1: View.DragShadowBuilder, p2: Any, p3: Int)

This function is deprecated. Deprecated in Java

Boolean
open Boolean
open Unit
open String
open Unit
open Unit
open Unit
open Unit
Unit
open Boolean
open Boolean

This function is deprecated. Deprecated in Java

open Boolean
@ViewDebug.ExportedProperty(category = "drawing")
willNotDraw()
From android.view.ViewGroup
open Unit
open Unit
open Unit
addFocusables(p0: ArrayList<View>, p1: Int, p2: Int)
open Unit
open Boolean
open Unit
open Unit
open Unit
addView(p0: View, p1: Int)
open Unit
open Unit
addView(p0: View, p1: Int, p2: Int)
open Unit
open Boolean
open Boolean
open Unit
attachLayoutAnimationParameters(
    p0: View,
    p1: ViewGroup.LayoutParams,
    p2: Int,
    p3: Int
)
open Unit
open Unit
open Boolean
open Boolean
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
debug(p0: Int)
open Unit
open Unit
open Unit
open Unit
open WindowInsets
open Boolean
open Unit
open Unit
open Unit
open Boolean
open Unit
open Unit
open Unit
open Unit
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Boolean
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
dispatchScrollCaptureSearch(
    p0: Rect,
    p1: Point,
    p2: Consumer<ScrollCaptureTarget>
)
open Unit
open Unit
open Unit
open Unit
open Unit

This function is deprecated. Deprecated in Java

open Unit
open Boolean
open Boolean
open Boolean
open Unit
open Unit
open Unit
open Unit
open WindowInsets
open WindowInsetsAnimation.Bounds
open Unit

This function is deprecated. Deprecated in Java

open Unit
open Boolean
drawChild(p0: Canvas, p1: View, p2: Long)
open Unit
open Unit
open View
open OnBackInvokedDispatcher?
open Unit
open View
focusSearch(p0: View, p1: Int)
open Unit
open Boolean
open ViewGroup.LayoutParams
open ViewGroup.LayoutParams
open ViewGroup.LayoutParams
open CharSequence
open View
open Int
Int
open Int
open Boolean
open Boolean
getChildVisibleRect(p0: View, p1: Rect, p2: Point)
open Boolean
open Boolean
open Int
@ViewDebug.ExportedProperty(category = "focus", mapping = [@ViewDebug.IntToString(from = 131072, to = "FOCUS_BEFORE_DESCENDANTS"), @ViewDebug.IntToString(from = 262144, to = "FOCUS_AFTER_DESCENDANTS"), @ViewDebug.IntToString(from = 393216, to = "FOCUS_BLOCK_DESCENDANTS")])
getDescendantFocusability()
open View
open LayoutAnimationController
open Animation.AnimationListener
open Int
open LayoutTransition
open Int
open ViewGroupOverlay
open Int
@ViewDebug.ExportedProperty(category = "drawing", mapping = [@ViewDebug.IntToString(from = 0, to = "NONE"), @ViewDebug.IntToString(from = 1, to = "ANIMATION"), @ViewDebug.IntToString(from = 2, to = "SCROLLING"), @ViewDebug.IntToString(from = 3, to = "ALL")])
getPersistentDrawingCache()

This function is deprecated. Deprecated in Java

open Boolean
open Boolean
open Boolean
open Int
final Unit

This function is deprecated. Deprecated in Java

open ViewParent

This function is deprecated. Deprecated in Java

open Boolean

This function is deprecated. Deprecated in Java

open Boolean

This function is deprecated. Deprecated in Java

open Boolean
open Boolean

This function is deprecated. Deprecated in Java

open Boolean
open Boolean
open Boolean
open Unit
final Unit
layout(p0: Int, p1: Int, p2: Int, p3: Int)
open Unit
measureChild(p0: View, p1: Int, p2: Int)
open Unit
measureChildWithMargins(p0: View, p1: Int, p2: Int, p3: Int, p4: Int)
open Unit
measureChildren(p0: Int, p1: Int)
open Unit
Unit
Unit
open IntArray
open Unit
open Boolean
open Boolean
open Boolean
onNestedFling(p0: View, p1: Float, p2: Float, p3: Boolean)
open Boolean
onNestedPreFling(p0: View, p1: Float, p2: Float)
open Boolean
open Unit
onNestedPreScroll(p0: View, p1: Int, p2: Int, p3: IntArray)
open Unit
onNestedScroll(p0: View, p1: Int, p2: Int, p3: Int, p4: Int)
open Unit
onNestedScrollAccepted(p0: View, p1: View, p2: Int)
open Boolean
open Boolean
open PointerIcon
open Boolean
onStartNestedScroll(p0: View, p1: View, p2: Int)
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
removeViews(p0: Int, p1: Int)
open Unit
open Unit
open Boolean
open Unit
open Boolean
requestFocus(p0: Int, p1: Rect)
open Boolean
open Unit
open Boolean
open Unit
open Unit
open Unit

This function is deprecated. Deprecated in Java

open Unit

This function is deprecated. Deprecated in Java

open Unit

This function is deprecated. Deprecated in Java

open Unit
open Unit

This function is deprecated. Deprecated in Java

open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit
open Unit

This function is deprecated. Deprecated in Java

open Unit
open Unit
open Unit
open Unit
open Boolean
open Boolean
open Boolean
open ActionMode
open ActionMode
open Unit
open Unit
open Unit
open Unit

Public constructors

SharedUiContainer

Added in 1.0.0-alpha14
SharedUiContainer(context: Context, attrs: AttributeSet? = null)

Public functions

registerSharedUiAsset

Added in 1.0.0-alpha14
fun registerSharedUiAsset(sharedUiAsset: SharedUiAsset): Boolean

Registers a SharedUiAsset, that represents a native ad asset, on SharedUiContainer. The UI provider will receive information about the asset throughout the lifetime of the shared UI session. Because of this, no user-sensitive information should be stored in sharedUiAsset.

sharedUiAsset must comprise a View and its asset ID. This view must be a child, direct or indirect, of the container. If the view gets detached from window, it will be unregistered from the container.

One View can only be associated with one asset. If there's already another SharedUiAsset registered for the View, sharedUiAsset won't be registered, and the method will return 'false'.

Asset IDs will be used by the UI provider to identify an asset view and should be obtained beforehand from the provider. Within the container, an asset ID doesn't have to be unique - the container doesn't impose any restrictions in this regard, and the exact asset ID structure should be a part of the contract between the UI client and provider.

SharedUiAsset allows to provide a SandboxedUiAdapter for registered SandboxedSdkViews. In this case, the container will handle session management of the view: SandboxedUiAdapter will be set on the view once the container's session is open or, if it's already open, will be set right away. However, the session will be closed by the container before the shared UI session in any case.

Returns
Boolean

'true' if sharedUiAsset was successfully registered, 'false' if there was another SharedUiAsset registered for the provided View.

Throws
kotlin.IllegalArgumentException

if a View is not a child (direct or indirect) of the container.

setAdapter

Added in 1.0.0-alpha14
fun setAdapter(sharedUiAdapter: SharedUiAdapter?): Unit

Sets SharedUiAdapter to maintain a session between SharedUiContainer and a sandboxed SDK.

If there's already an adapter set, and it's different from sharedUiAdapter, its shared UI session is closed, assets registered using registerSharedUiAsset are unregistered, and UI sessions for all registered SandboxedSdkView assets are closed.

If sharedUiAdapter is the same as the previously set adapter, nothing happens.

Passing 'null' value for sharedUiAdapter will release all resources and unregister all children, without setting a new adapter.

unregisterSharedUiAsset

Added in 1.0.0-alpha14
fun unregisterSharedUiAsset(view: View): Boolean

Unregisters a SharedUiAsset associated with a given view from the container. If the view is a SandboxedSdkView, its provider-owned UI session is closed.

Returns
Boolean

'true' if the asset was unregistered successfully, 'false' otherwise (if there wasn't a SharedUiAsset associated with view)

Protected functions

onAttachedToWindow

protected open fun onAttachedToWindow(): Unit

onDetachedFromWindow

protected open fun onDetachedFromWindow(): Unit

onLayout

protected open fun onLayout(changed: Boolean, left: Int, top: Int, right: Int, bottom: Int): Unit

Lays out the container's children in the top left corner with their measured sizes. Takes into account the container's padding settings.

Child views that are View.GONE are ignored and don't take any space.

onMeasure

protected open fun onMeasure(widthMeasureSpec: Int, heightMeasureSpec: Int): Unit

Measures the container and its children. The size of the container is determined by the size of its largest child, container's padding and suggested dimensions, but only if they do not exceed size restrictions imposed by the container's parent view. Child views are measured with respect to the container's padding settings.

View.GONE child views are not used for sizing and are not measured.

onWindowVisibilityChanged

protected open fun onWindowVisibilityChanged(visibility: Int): Unit