CreatePasswordRequest


public final class CreatePasswordRequest extends CreateCredentialRequest


A request to save the user password credential with their password provider.

Summary

Public constructors

CreatePasswordRequest(
    @NonNull String id,
    @NonNull String password,
    String origin,
    boolean preferImmediatelyAvailableCredentials,
    boolean isAutoSelectAllowed
)

Constructs a CreatePasswordRequest to save the user password credential with their password provider.

CreatePasswordRequest(
    @NonNull String id,
    @NonNull String password,
    String origin,
    String preferDefaultProvider,
    boolean preferImmediatelyAvailableCredentials,
    boolean isAutoSelectAllowed
)

Constructs a CreatePasswordRequest to save the user password credential with their password provider.

Public methods

final @NonNull String

the user id associated with the password

final @NonNull String

the password

Inherited methods

From androidx.credentials.CreateCredentialRequest
final @NonNull Bundle

the partial request data in the Bundle format that will be sent to the provider during the initial candidate query stage, which should not contain sensitive user credential information (note: bundle keys in the form of androidx.credentials.* are reserved for internal library use)

final @NonNull Bundle

the request data in the Bundle format

final @NonNull CreateCredentialRequest.DisplayInfo

the information to be displayed on the screen

final String

the origin of a different application if the request is being made on behalf of that application (Note: for API level >=34, setting a non-null value for this parameter will throw a SecurityException if android.permission.CREDENTIAL_MANAGER_SET_ORIGIN is not present)

final boolean

true if you prefer the operation to return immediately when there is no available passkey registration offering instead of falling back to discovering remote options, and false (preferred by default) otherwise

final @NonNull String

the credential type determined by the credential-type-specific subclass (e.g. the type for CreatePasswordRequest is PasswordCredential.TYPE_PASSWORD_CREDENTIAL and for CreatePublicKeyCredentialRequest is PublicKeyCredential.TYPE_PUBLIC_KEY_CREDENTIAL)

final boolean

whether a create option will be automatically chosen if it is the only one available to the user

final boolean

true if must only be fulfilled by a system provider and false otherwise

Public constructors

CreatePasswordRequest

Added in 1.2.0
public CreatePasswordRequest(
    @NonNull String id,
    @NonNull String password,
    String origin,
    boolean preferImmediatelyAvailableCredentials,
    boolean isAutoSelectAllowed
)

Constructs a CreatePasswordRequest to save the user password credential with their password provider.

Parameters
@NonNull String id

the user id associated with the password

@NonNull String password

the password

String origin

the origin of a different application if the request is being made on behalf of that application (Note: for API level >=34, setting a non-null value for this parameter will throw a SecurityException if android.permission.CREDENTIAL_MANAGER_SET_ORIGIN is not present)

boolean preferImmediatelyAvailableCredentials

true if you prefer the operation to return immediately when there is no available password saving option instead of falling back to discovering remote options, and false (default) otherwise

boolean isAutoSelectAllowed

whether a create option will be automatically chosen if it is the only one available to the user (note that there is a chance that the credential provider does not support auto-select even if you turn this bit on); not recommended to be true for password request type to ensure that the user will always get a confirmation dialog even if the password saving provider does not offer any UI

Throws
kotlin.NullPointerException

If id is null

kotlin.NullPointerException

If password is null

kotlin.IllegalArgumentException

If password is empty

java.lang.SecurityException

if origin is set but android.permission.CREDENTIAL_MANAGER_SET_ORIGIN is not present

CreatePasswordRequest

Added in 1.2.0
public CreatePasswordRequest(
    @NonNull String id,
    @NonNull String password,
    String origin,
    String preferDefaultProvider,
    boolean preferImmediatelyAvailableCredentials,
    boolean isAutoSelectAllowed
)

Constructs a CreatePasswordRequest to save the user password credential with their password provider.

Parameters
@NonNull String id

the user id associated with the password

@NonNull String password

the password

String origin

the origin of a different application if the request is being made on behalf of that application (Note: for API level >=34, setting a non-null value for this parameter will throw a SecurityException if android.permission.CREDENTIAL_MANAGER_SET_ORIGIN is not present)

String preferDefaultProvider

the preferred default provider component name to prioritize in the selection UI flows (Note: your app must have the permission android.permission.CREDENTIAL_MANAGER_SET_ALLOWED_PROVIDERS to specify this, or it would not take effect; also this bit may not take effect for Android API level 33 and below, depending on the pre-34 provider(s) you have chosen)

boolean preferImmediatelyAvailableCredentials

true if you prefer the operation to return immediately when there is no available passkey registration offering instead of falling back to discovering remote options, and false (preferably) otherwise

boolean isAutoSelectAllowed

whether a create option will be automatically chosen if it is the only one available to the user (note that there is a chance that the credential provider does not support auto-select even if you turn this bit on); not recommended to be true for password request type to ensure that the user will always get a confirmation dialog even if the password saving provider does not offer any UI

Throws
kotlin.NullPointerException

If id is null

kotlin.NullPointerException

If password is null

kotlin.IllegalArgumentException

If password is empty

java.lang.SecurityException

if origin is set but android.permission.CREDENTIAL_MANAGER_SET_ORIGIN is not present

Public methods

getId

Added in 1.2.0
public final @NonNull String getId()

the user id associated with the password

getPassword

Added in 1.2.0
public final @NonNull String getPassword()

the password