VisualizerViewAction


class VisualizerViewAction : Parcelable
kotlin.Any
   ↳ android.service.personalcontext.embedded.VisualizerViewAction

Class representing interactive actions attached to a view in a visualization generated in InsightVisualizerSession.createRemoteViewsForHints.

Visualizers wanting to add interactivity to the RemoteViews they produced must use this class. Multiple actions can be run on a single interaction using the Builder. Actions can be attached to the UI with attach or by directly attaching the intent generated from createIntent to a view using RemoteViews.setOnClickResponse.

Summary

Nested classes

Builder for creating VisualizerViewAction instances.

Inherited constants
Public methods
static Unit
attach(context: Context, remoteViews: RemoteViews, viewId: Int, onClickAction: VisualizerViewAction?, onLongClickAction: VisualizerViewAction?)

Attaches the specified short-click and/or long-click actions to the target view inside a RemoteViews hierarchy.

static Intent
createIntent(onClickAction: VisualizerViewAction?, onLongClickAction: VisualizerViewAction?)

Converts the specified actions into an Intent intended for use with RemoteViews.setOnClickPendingIntent(int,PendingIntent).

Int

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation.

ContextInsight?

Returns the ContextInsight configured to report an attribution event when triggered, or null if this action does not perform attribution.

ContextInsight?

Returns the ContextInsight configured to be egressed to the client app when triggered, or null if this action does not perform egress.

FeedbackRequest?

Returns the FeedbackRequest configured to be provided to the feedback activity when triggered, or null if this action does not perform feedback.

Boolean

Returns whether triggering this action will end the visualization session, causing the visualization to stop displaying.

Unit
writeToParcel(dest: Parcel, flags: Int)

Flatten this object in to a Parcel.

Properties
static Parcelable.Creator<VisualizerViewAction!>

Public methods

attach

static fun attach(
    context: Context,
    remoteViews: RemoteViews,
    viewId: Int,
    onClickAction: VisualizerViewAction?,
    onLongClickAction: VisualizerViewAction?
): Unit

Attaches the specified short-click and/or long-click actions to the target view inside a RemoteViews hierarchy.

Parameters
context Context: The Context used to create the underlying PendingIntent.
This value cannot be null.
remoteViews RemoteViews: The RemoteViews hierarchy containing the target view.
This value cannot be null.
viewId Int: The resource ID of the view that should trigger these actions when clicked.
onClickAction VisualizerViewAction?: The action to execute when the target view is clicked, or null if none.
onLongClickAction VisualizerViewAction?: The action to execute when the target view is long-pressed, or null if none.
Exceptions
java.lang.IllegalArgumentException if both onClickAction and onLongClickAction are null.

createIntent

static fun createIntent(
    onClickAction: VisualizerViewAction?,
    onLongClickAction: VisualizerViewAction?
): Intent

Converts the specified actions into an Intent intended for use with RemoteViews.setOnClickPendingIntent(int,PendingIntent).

Parameters
onClickAction VisualizerViewAction?: The action to execute when the target view is clicked, or null if none.
onLongClickAction VisualizerViewAction?: The action to execute when the target view is long-pressed, or null if none.
Return
Intent An Intent containing the actions parceled as extras.
This value cannot be null.
Exceptions
java.lang.IllegalArgumentException if both onClickAction and onLongClickAction are null.

describeContents

fun describeContents(): Int

Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. For example, if the object will include a file descriptor in the output of writeToParcel(Parcel,int), the return value of this method must include the CONTENTS_FILE_DESCRIPTOR bit.

Return
Int a bitmask indicating the set of special object types marshaled by this Parcelable object instance.
Value is either 0 or

getAttributionInsight

fun getAttributionInsight(): ContextInsight?

Returns the ContextInsight configured to report an attribution event when triggered, or null if this action does not perform attribution.

getEgressInsight

fun getEgressInsight(): ContextInsight?

Returns the ContextInsight configured to be egressed to the client app when triggered, or null if this action does not perform egress.

getFeedbackRequest

fun getFeedbackRequest(): FeedbackRequest?

Returns the FeedbackRequest configured to be provided to the feedback activity when triggered, or null if this action does not perform feedback.

When the feedback activity is launched, this FeedbackRequest is delivered as a Parcelable extra under android.service.personalcontext.PersonalContextManager#EXTRA_FEEDBACK_REQUEST.

shouldCloseSessionOnTriggered

fun shouldCloseSessionOnTriggered(): Boolean

Returns whether triggering this action will end the visualization session, causing the visualization to stop displaying.

The visualizer session will receive the InsightVisualizerSession.close(int) callback when this action is triggered.

writeToParcel

fun writeToParcel(
    dest: Parcel,
    flags: Int
): Unit

Flatten this object in to a Parcel.

Parameters
dest Parcel: This value cannot be null.
flags Int: Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE.
Value is either 0 or a combination of the following:

Properties

CREATOR

static val CREATOR: Parcelable.Creator<VisualizerViewAction!>