# Print output for @column tags ?>
Developers

- Design
- Develop
- Distribute

Developer Console

## Most visited

## Recently visited

## Results for

Summary: Nested Classes | Constants | Inherited Constants | Fields | Ctors | Methods | Inherited Methods

# Notification.Action

`public static class Notification.Action`
`extends Object` `implements Parcelable`

java.lang.Object
↳ | android.app.Notification.Action

Structure to encapsulate a named action that can be shown as part of this notification. It must include an icon, a label, and a `PendingIntent` to be fired when the action is selected by the user.

Apps should use `Notification.Builder#addAction(int, CharSequence, PendingIntent)` or `Notification.Builder#addAction(Notification.Action)` to attach actions.

As of Android `Build.VERSION_CODES.S`, apps targeting API level `Build.VERSION_CODES.S` or higher won't be able to start activities while processing broadcast receivers or services in response to notification action clicks. To launch an activity in those cases, provide a `PendingIntent` for the activity itself.

## Summary

### Nested classes
`class` | `Notification.Action.Builder` Builder class for `Action` objects.
`interface` | `Notification.Action.Extender` Extender interface for use with `Builder#extend`.
`class` | `Notification.Action.WearableExtender` Wearable extender for notification actions.

### Constants
`int` | `SEMANTIC_ACTION_ARCHIVE` `SemanticAction`: Archive the content associated with the notification.
`int` | `SEMANTIC_ACTION_CALL` `SemanticAction`: Call a contact, group, etc.
`int` | `SEMANTIC_ACTION_DELETE` `SemanticAction`: Delete the content associated with the notification.
`int` | `SEMANTIC_ACTION_MARK_AS_READ` `SemanticAction`: Mark content as read.
`int` | `SEMANTIC_ACTION_MARK_AS_UNREAD` `SemanticAction`: Mark content as unread.
`int` | `SEMANTIC_ACTION_MUTE` `SemanticAction`: Mute the content associated with the notification.
`int` | `SEMANTIC_ACTION_NONE` `Notification.Action`: No semantic action defined.
`int` | `SEMANTIC_ACTION_REPLY` `SemanticAction`: Reply to a conversation, chat, group, or wherever replies may be appropriate.
`int` | `SEMANTIC_ACTION_THUMBS_DOWN` `SemanticAction`: Mark content with a thumbs down.
`int` | `SEMANTIC_ACTION_THUMBS_UP` `SemanticAction`: Mark content with a thumbs up.
`int` | `SEMANTIC_ACTION_UNMUTE` `SemanticAction`: Unmute the content associated with the notification.

### Inherited constants
From interface `android.os.Parcelable`
`int` | `CONTENTS_FILE_DESCRIPTOR` Descriptor bit used with `describeContents()`: indicates that the Parcelable object's flattened representation includes a file descriptor.
`int` | `PARCELABLE_WRITE_RETURN_VALUE` Flag for use with `writeToParcel(Parcel, int)`: the object being written is a return value, that is the result of a function such as "`Parcelable someFunction()`", "`void someFunction(out Parcelable)`", or "`void someFunction(inout Parcelable)`".

### Fields
`public static final Creator<Notification.Action>` | `CREATOR`
`public PendingIntent` | `actionIntent` Intent to send when the user invokes this action.
`public int` | `icon` This field is deprecated. Use `Action#getIcon()` instead.
`public CharSequence` | `title` Title of the action.

### Public constructors
`Action(int icon, CharSequence title, PendingIntent intent)` This constructor is deprecated. Use `Notification.Action.Builder`.

### Public methods
`Notification.Action` | `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.
`boolean` | `getAllowGeneratedReplies()` Return whether the platform should automatically generate possible replies for this `Action`
`RemoteInput[]` | `getDataOnlyRemoteInputs()` Get the list of inputs to be collected from the user that ONLY accept data when this action is sent.
`Bundle` | `getExtras()` Get additional metadata carried around with this Action.
`Icon` | `getIcon()` Return an icon representing the action.
`RemoteInput[]` | `getRemoteInputs()` Get the list of inputs to be collected from the user when this action is sent.
`int` | `getSemanticAction()` Returns the `SemanticAction` associated with this `Action`.
`boolean` | `isAuthenticationRequired()` Returns whether the OS should only send this action's `PendingIntent` on an unlocked device.
`boolean` | `isContextual()` Returns whether this is a contextual Action, i.e.
`void` | `writeToParcel(Parcel out, int flags)` Flatten this object in to a Parcel.

### Inherited methods
From class `java.lang.Object`
`Object` | `clone()` Creates and returns a copy of this object.
`boolean` | `equals(Object obj)` Indicates whether some other object is "equal to" this one.
`void` | `finalize()` Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.
`final Class<?>` | `getClass()` Returns the runtime class of this `Object`.
`int` | `hashCode()` Returns a hash code value for the object.
`final void` | `notify()` Wakes up a single thread that is waiting on this object's monitor.
`final void` | `notifyAll()` Wakes up all threads that are waiting on this object's monitor.
`String` | `toString()` Returns a string representation of the object.
`final void` | `wait(long timeout, int nanos)` Causes the current thread to wait until another thread invokes the `notify()` method or the `notifyAll()` method for this object, or some other thread interrupts the current thread, or a certain amount of real time has elapsed.
`final void` | `wait(long timeout)` Causes the current thread to wait until either another thread invokes the `notify()` method or the `notifyAll()` method for this object, or a specified amount of time has elapsed.
`final void` | `wait()` Causes the current thread to wait until another thread invokes the `notify()` method or the `notifyAll()` method for this object.
From interface `android.os.Parcelable`
`abstract int` | `describeContents()` Describe the kinds of special objects contained in this Parcelable instance's marshaled representation.
`abstract void` | `writeToParcel(Parcel dest, int flags)` Flatten this object in to a Parcel.

## Constants

### SEMANTIC_ACTION_ARCHIVE

    public static final int SEMANTIC_ACTION_ARCHIVE

`SemanticAction`: Archive the content associated with the notification. This could mean archiving an email, message, etc.

Constant Value: 5 (0x00000005)

### SEMANTIC_ACTION_CALL

    public static final int SEMANTIC_ACTION_CALL

`SemanticAction`: Call a contact, group, etc.

Constant Value: 10 (0x0000000a)

### SEMANTIC_ACTION_DELETE

    public static final int SEMANTIC_ACTION_DELETE

`SemanticAction`: Delete the content associated with the notification. This could mean deleting an email, message, etc.

Constant Value: 4 (0x00000004)

### SEMANTIC_ACTION_MARK_AS_READ

    public static final int SEMANTIC_ACTION_MARK_AS_READ

`SemanticAction`: Mark content as read.

Constant Value: 2 (0x00000002)

### SEMANTIC_ACTION_MARK_AS_UNREAD

    public static final int SEMANTIC_ACTION_MARK_AS_UNREAD

`SemanticAction`: Mark content as unread.

Constant Value: 3 (0x00000003)

### SEMANTIC_ACTION_MUTE

    public static final int SEMANTIC_ACTION_MUTE

`SemanticAction`: Mute the content associated with the notification. This could mean silencing a conversation or currently playing media.

Constant Value: 6 (0x00000006)

### SEMANTIC_ACTION_NONE

    public static final int SEMANTIC_ACTION_NONE

`Notification.Action`: No semantic action defined.

Constant Value: 0 (0x00000000)

### SEMANTIC_ACTION_REPLY

    public static final int SEMANTIC_ACTION_REPLY

`SemanticAction`: Reply to a conversation, chat, group, or wherever replies may be appropriate.

Constant Value: 1 (0x00000001)

### SEMANTIC_ACTION_THUMBS_DOWN

    public static final int SEMANTIC_ACTION_THUMBS_DOWN

`SemanticAction`: Mark content with a thumbs down.

Constant Value: 9 (0x00000009)

### SEMANTIC_ACTION_THUMBS_UP

    public static final int SEMANTIC_ACTION_THUMBS_UP

`SemanticAction`: Mark content with a thumbs up.

Constant Value: 8 (0x00000008)

### SEMANTIC_ACTION_UNMUTE

    public static final int SEMANTIC_ACTION_UNMUTE

`SemanticAction`: Unmute the content associated with the notification. This could mean un-silencing a conversation or currently playing media.

Constant Value: 7 (0x00000007)

## Fields

### CREATOR

    public static final Creator<Notification.Action> CREATOR

### actionIntent

    public PendingIntent actionIntent

Intent to send when the user invokes this action. May be null, in which case the action may be rendered in a disabled presentation by the system UI.

### icon

    public int icon

This field is deprecated.
Use `Action#getIcon()` instead.

Small icon representing the action.

### title

    public CharSequence title

Title of the action.

## Public constructors

### Action

    public Action (int icon,
                    CharSequence title,
                    PendingIntent intent)

This constructor is deprecated.
Use `Notification.Action.Builder`.

Parameters
`icon` | `int`
`title` | `CharSequence`
`intent` | `PendingIntent`

## Public methods

### clone

    public Notification.Action 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
`Notification.Action` | a clone of this instance.

### describeContents

    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(android.os.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. Value is either `0` or `CONTENTS_FILE_DESCRIPTOR`

### getAllowGeneratedReplies

    public boolean getAllowGeneratedReplies ()

Return whether the platform should automatically generate possible replies for this `Action`

Returns
`boolean` |

### getDataOnlyRemoteInputs

    public RemoteInput[] getDataOnlyRemoteInputs ()

Get the list of inputs to be collected from the user that ONLY accept data when this action is sent. These remote inputs are guaranteed to return true on a call to `RemoteInput#isDataOnly`. Returns null if there are no data-only remote inputs. This method exists so that legacy RemoteInput collectors that pre-date the addition of non-textual RemoteInputs do not access these remote inputs.

Returns
`RemoteInput[]` |

### getExtras

    public Bundle getExtras ()

Get additional metadata carried around with this Action.

Returns
`Bundle` |

### getIcon

    public Icon getIcon ()

Return an icon representing the action.

Returns
`Icon` |

### getRemoteInputs

    public RemoteInput[] getRemoteInputs ()

Get the list of inputs to be collected from the user when this action is sent. May return null if no remote inputs were added. Only returns inputs which accept a text input. For inputs which only accept data use `getDataOnlyRemoteInputs()`.

Returns
`RemoteInput[]` |

### getSemanticAction

    public int getSemanticAction ()

Returns the `SemanticAction` associated with this `Action`. A `SemanticAction` denotes what an `Action`'s `PendingIntent` will do (eg. reply, mark as read, delete, etc).

Returns
`int` | Value is `SEMANTIC_ACTION_NONE`, `SEMANTIC_ACTION_REPLY`, `SEMANTIC_ACTION_MARK_AS_READ`, `SEMANTIC_ACTION_MARK_AS_UNREAD`, `SEMANTIC_ACTION_DELETE`, `SEMANTIC_ACTION_ARCHIVE`, `SEMANTIC_ACTION_MUTE`, `SEMANTIC_ACTION_UNMUTE`, `SEMANTIC_ACTION_THUMBS_UP`, `SEMANTIC_ACTION_THUMBS_DOWN`, `SEMANTIC_ACTION_CALL`, android.app.Notification.Action.SEMANTIC_ACTION_MARK_CONVERSATION_AS_PRIORITY, or android.app.Notification.Action.SEMANTIC_ACTION_CONVERSATION_IS_PHISHING

### isAuthenticationRequired

    public boolean isAuthenticationRequired ()

Returns whether the OS should only send this action's `PendingIntent` on an unlocked device. If the device is locked when the action is invoked, the OS should show the keyguard and require successful authentication before invoking the intent.

Returns
`boolean` |

### isContextual

    public boolean isContextual ()

Returns whether this is a contextual Action, i.e. whether the action is dependent on the notification message body. An example of a contextual action could be an action opening a map application with an address shown in the notification.

Returns
`boolean` |

### writeToParcel

    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`. Value is either `0` or a combination of `Parcelable.PARCELABLE_WRITE_RETURN_VALUE`, and android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES

Full name *
Email address *
Company / developer name
One of your Play Store app URLs *
Which best describes your business:*
Apps
Games
Apps & Games
*
*