RemoteAction

public final class RemoteAction
extends Object implements Parcelable

java.lang.Object
   ↳ android.app.RemoteAction


Represents a remote action that can be called from another process. The action can have an associated visualization including metadata like an icon or title.

Summary

Inherited constants

Fields

public static final Creator<RemoteAction> CREATOR

Public constructors

RemoteAction(Icon icon, CharSequence title, CharSequence contentDescription, PendingIntent intent)

Public methods

RemoteAction clone()

Creates and returns a copy of this object.

int describeContents()

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

void dump(String prefix, PrintWriter pw)
PendingIntent getActionIntent()

Return the action intent.

CharSequence getContentDescription()

Return a content description representing the action.

Icon getIcon()

Return an icon representing the action.

CharSequence getTitle()

Return an title representing the action.

boolean isEnabled()

Return whether this action is enabled.

void setEnabled(boolean enabled)

Sets whether this action is enabled.

void setShouldShowIcon(boolean shouldShowIcon)

Sets whether the icon should be shown.

boolean shouldShowIcon()

Return whether the icon should be shown.

void writeToParcel(Parcel out, int flags)

Flatten this object in to a Parcel.

Inherited methods

Fields

CREATOR

added in API level 26
public static final Creator<RemoteAction> CREATOR

Public constructors

RemoteAction

added in API level 26
public RemoteAction (Icon icon, 
                CharSequence title, 
                CharSequence contentDescription, 
                PendingIntent intent)

Parameters
icon Icon

This value must never be null.

title CharSequence

This value must never be null.

contentDescription CharSequence

This value must never be null.

intent PendingIntent

This value must never be null.

Public methods

clone

added in API level 26
public RemoteAction clone ()

Creates and returns a copy of this object. The precise meaning of "copy" may depend on the class of the object. The general intent is that, for any object x, the expression:

 x.clone() != x
will be true, and that the expression:
 x.clone().getClass() == x.getClass()
will be true, but these are not absolute requirements. While it is typically the case that:
 x.clone().equals(x)
will be true, this is not an absolute requirement.

By convention, the returned object should be obtained by calling super.clone. If a class and all of its superclasses (except Object) obey this convention, it will be the case that x.clone().getClass() == x.getClass().

By convention, the object returned by this method should be independent of this object (which is being cloned). To achieve this independence, it may be necessary to modify one or more fields of the object returned by super.clone before returning it. Typically, this means copying any mutable objects that comprise the internal "deep structure" of the object being cloned and replacing the references to these objects with references to the copies. If a class contains only primitive fields or references to immutable objects, then it is usually the case that no fields in the object returned by super.clone need to be modified.

The method clone for class Object performs a specific cloning operation. First, if the class of this object does not implement the interface Cloneable, then a CloneNotSupportedException is thrown. Note that all arrays are considered to implement the interface Cloneable and that the return type of the clone method of an array type T[] is T[] where T is any reference or primitive type. Otherwise, this method creates a new instance of the class of this object and initializes all its fields with exactly the contents of the corresponding fields of this object, as if by assignment; the contents of the fields are not themselves cloned. Thus, this method performs a "shallow copy" of this object, not a "deep copy" operation.

The class Object does not itself implement the interface Cloneable, so calling the clone method on an object whose class is Object will result in throwing an exception at run time.

Returns
RemoteAction a clone of this instance.

describeContents

added in API level 26
public int describeContents ()

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.

Returns
int a bitmask indicating the set of special object types marshaled by this Parcelable object instance.

dump

added in API level 26
public void dump (String prefix, 
                PrintWriter pw)

Parameters
prefix String

pw PrintWriter

getActionIntent

added in API level 26
public PendingIntent getActionIntent ()

Return the action intent.

Returns
PendingIntent

This value will never be null.

getContentDescription

added in API level 26
public CharSequence getContentDescription ()

Return a content description representing the action.

Returns
CharSequence

This value will never be null.

getIcon

added in API level 26
public Icon getIcon ()

Return an icon representing the action.

Returns
Icon

This value will never be null.

getTitle

added in API level 26
public CharSequence getTitle ()

Return an title representing the action.

Returns
CharSequence

This value will never be null.

isEnabled

added in API level 26
public boolean isEnabled ()

Return whether this action is enabled.

Returns
boolean

setEnabled

added in API level 26
public void setEnabled (boolean enabled)

Sets whether this action is enabled.

Parameters
enabled boolean

setShouldShowIcon

added in API level 28
public void setShouldShowIcon (boolean shouldShowIcon)

Sets whether the icon should be shown.

Parameters
shouldShowIcon boolean

shouldShowIcon

added in API level 28
public boolean shouldShowIcon ()

Return whether the icon should be shown.

Returns
boolean

writeToParcel

added in API level 26
public void writeToParcel (Parcel out, 
                int flags)

Flatten this object in to a Parcel.

Parameters
out Parcel: The Parcel in which the object should be written.

flags int: Additional flags about how the object should be written. May be 0 or Parcelable.PARCELABLE_WRITE_RETURN_VALUE.