CredentialEntry


public final class CredentialEntry
extends Object implements Parcelable

java.lang.Object
   ↳ android.service.credentials.CredentialEntry


A credential entry that is to be displayed on the account selector that is presented to the user.

If user selects this entry, the corresponding PendingIntent, set on the slice will be invoked to launch activities that require some user engagement before getting the credential corresponding to this entry, e.g. authentication, confirmation etc. The extras associated with the resulting Activity will also contain the complete credential request containing all required parameters. This request can be retrieved against CredentialProviderService.EXTRA_GET_CREDENTIAL_REQUEST. Once the activity fulfills the required user engagement, the Activity result should be set to Activity.RESULT_OK, and the CredentialProviderService.EXTRA_GET_CREDENTIAL_RESPONSE must be set with a GetCredentialResponse object.

Summary

Inherited constants

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<CredentialEntry> CREATOR

Public constructors

CredentialEntry(BeginGetCredentialOption beginGetCredentialOption, Slice slice)

Creates an entry that is associated with a BeginGetCredentialOption request.

CredentialEntry(String type, Slice slice)

Creates an entry that is independent of an incoming BeginGetCredentialOption request.

CredentialEntry(String beginGetCredentialOptionId, String type, Slice slice)

Creates an entry that is associated with a BeginGetCredentialOption request.

Public methods

int describeContents()

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

String getBeginGetCredentialOptionId()

Returns the id of the BeginGetCredentialOption for which this credential entry has been constructed.

Slice getSlice()

Returns the Slice object containing UI display content to be shown for this entry.

String getType()

Returns the specific credential type of the entry.

void writeToParcel(Parcel dest, int flags)

Flatten this object in to a Parcel.

Inherited methods

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 timeoutMillis, int nanos)

Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

final void wait(long timeoutMillis)

Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

final void wait()

Causes the current thread to wait until it is awakened, typically by being notified or interrupted.

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.

Fields

CREATOR

Added in API level 34
public static final Creator<CredentialEntry> CREATOR

Public constructors

CredentialEntry

Added in API level 34
public CredentialEntry (BeginGetCredentialOption beginGetCredentialOption, 
                Slice slice)

Creates an entry that is associated with a BeginGetCredentialOption request. Providers must use this constructor when they extend from CredentialProviderService to respond to query phase CredentialProviderService.onBeginGetCredential credential retrieval requests.

Parameters
beginGetCredentialOption BeginGetCredentialOption: the request option for which this credential entry is being constructed This helps maintain an association, such that when the user selects this entry, providers can receive the complete corresponding request. This value cannot be null.

slice Slice: the slice containing the metadata to be shown on the UI. Must be constructed through the androidx.credentials jetpack library. This value cannot be null.

CredentialEntry

Added in API level 34
public CredentialEntry (String type, 
                Slice slice)

Creates an entry that is independent of an incoming BeginGetCredentialOption request. Providers must use this constructor for constructing entries to be registered with the framework outside of the span of an API call.

Parameters
type String: the type of the credential This value cannot be null.

slice Slice: the slice containing the metadata to be shown on the UI. Must be constructed through the androidx.credentials jetpack library. This value cannot be null.

CredentialEntry

Added in API level 34
public CredentialEntry (String beginGetCredentialOptionId, 
                String type, 
                Slice slice)

Creates an entry that is associated with a BeginGetCredentialOption request. Providers must use this constructor when they extend from CredentialProviderService to respond to query phase CredentialProviderService.onBeginGetCredential credential retrieval requests.

Parameters
beginGetCredentialOptionId String: the beginGetCredentialOptionId to be retrieved from BeginGetCredentialOption.getId() - the request option for which this CredentialEntry is being constructed This helps maintain an association such that when the user selects this entry, providers can receive the complete corresponding GetCredentialRequest. This value cannot be null.

type String: the type of the credential for which this credential entry is being created This value cannot be null.

slice Slice: the slice containing the metadata to be shown on the UI, must be constructed through the androidx.credentials.provider Jetpack library; If constructed manually, the slice object must contain the non-null properties of the CredentialEntry class populated as slice items against specific hints as used in the class's toSlice method, since the Android System uses this library to parse the slice and extract the required attributes

Throws
IllegalArgumentException If beginGetCredentialOptionId or type is null, or empty

Public methods

describeContents

Added in API level 34
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

getBeginGetCredentialOptionId

Added in API level 34
public String getBeginGetCredentialOptionId ()

Returns the id of the BeginGetCredentialOption for which this credential entry has been constructed.

Returns
String This value cannot be null.

getSlice

Added in API level 34
public Slice getSlice ()

Returns the Slice object containing UI display content to be shown for this entry.

Returns
Slice This value cannot be null.

getType

Added in API level 34
public String getType ()

Returns the specific credential type of the entry.

Returns
String This value cannot be null.

writeToParcel

Added in API level 34
public void writeToParcel (Parcel dest, 
                int flags)

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