RecoverableSecurityException
public
final
class
RecoverableSecurityException
extends SecurityException
implements
Parcelable
java.lang.Object | |||||
↳ | java.lang.Throwable | ||||
↳ | java.lang.Exception | ||||
↳ | java.lang.RuntimeException | ||||
↳ | java.lang.SecurityException | ||||
↳ | android.app.RecoverableSecurityException |
Specialization of SecurityException
that contains additional
information about how to involve the end user to recover from the exception.
This exception is only appropriate where there is a concrete action the user can take to recover and make forward progress, such as confirming or entering authentication credentials, or granting access.
If the receiving app is actively involved with the user, it should present the contained recovery details to help the user make forward progress.
Note: legacy code that receives this exception may treat it as a general
SecurityException
, and thus there is no guarantee that the messages
contained will be shown to the end user.
Summary
Inherited constants |
---|
Fields | |
---|---|
public
static
final
Creator<RecoverableSecurityException> |
CREATOR
|
Public constructors | |
---|---|
RecoverableSecurityException(Throwable cause, CharSequence userMessage, RemoteAction userAction)
Create an instance ready to be thrown. |
Public methods | |
---|---|
int
|
describeContents()
Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. |
RemoteAction
|
getUserAction()
Return primary action that will initiate the recovery. |
CharSequence
|
getUserMessage()
Return short message describing the issue for end user audiences, which may be shown in a notification or dialog. |
void
|
writeToParcel(Parcel dest, int flags)
Flatten this object in to a Parcel. |
Inherited methods | |
---|---|
Fields
Public constructors
RecoverableSecurityException
public RecoverableSecurityException (Throwable cause, CharSequence userMessage, RemoteAction userAction)
Create an instance ready to be thrown.
Parameters | |
---|---|
cause |
Throwable : original cause with details designed for engineering
audiences.
This value cannot be null . |
userMessage |
CharSequence : short message describing the issue for end user
audiences, which may be shown in a notification or dialog.
This should be localized and less than 64 characters. For
example: PIN required to access Document.pdf
This value cannot be null . |
userAction |
RemoteAction : primary action that will initiate the recovery. The
title should be localized and less than 24 characters. For
example: Enter PIN. This action must launch an
activity that is expected to set
Activity#setResult(int) before finishing to
communicate the final status of the recovery. For example,
apps that observe Activity#RESULT_OK may choose to
immediately retry their operation.
This value cannot be null . |
Public methods
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 |
getUserAction
public RemoteAction getUserAction ()
Return primary action that will initiate the recovery.
Returns | |
---|---|
RemoteAction |
This value cannot be null . |
getUserMessage
public CharSequence getUserMessage ()
Return short message describing the issue for end user audiences, which may be shown in a notification or dialog.
Returns | |
---|---|
CharSequence |
This value cannot be null . |
writeToParcel
public void writeToParcel (Parcel dest, int flags)
Flatten this object in to a Parcel.
Parameters | |
---|---|
dest |
Parcel : The Parcel in which the object should be written.
This value cannot be null . |
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 |