CreateRestoreCredentialRequest


class CreateRestoreCredentialRequest : CreateCredentialRequest


A request to create a restore credential used for app restore purpose. App restore feature is a feature that allows users to copy an app and its data to a new Android device.

If the isCloudBackupEnabled is true, the restore credential service will periodically backup the restore credential to cloud. In order to use this setting, the user device must enable backup and have end-to-end-encryption enabled, such as screen lock. More about cloud backup can be found here. Cloud backup is supported on Android 2.2 and above. If the cloud backup is not enabled, catch the E2eeUnavailableException and retry without cloud backup.

Throws
androidx.credentials.exceptions.restorecredential.E2eeUnavailableException

if isCloudBackupEnabled was requested but the user device did not enable backup or e2ee (screen lock).

androidx.credentials.exceptions.restorecredential.CreateRestoreCredentialDomException

if the requestJson is an invalid Json that does not follow the standard webauthn web json format

kotlin.IllegalArgumentException

If requestJson is empty, or if it is not a valid JSON, or if it doesn't have a valid user.id defined according to the webauthn spec (https://w3c.github.io/webauthn/#dictdef-publickeycredentialcreationoptionsjson)

Summary

Public constructors

CreateRestoreCredentialRequest(
    requestJson: String,
    isCloudBackupEnabled: Boolean
)

Public properties

Boolean

whether the credential should be backed up to cloud.

String

the request in JSON format in the standard webauthn web json.

Inherited properties

From androidx.credentials.CreateCredentialRequest
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)

Bundle

the request data in the Bundle format

CreateCredentialRequest.DisplayInfo

the information to be displayed on the screen

Boolean

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

Boolean

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

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)

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

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)

Public constructors

CreateRestoreCredentialRequest

Added in 1.5.0-beta01
CreateRestoreCredentialRequest(
    requestJson: String,
    isCloudBackupEnabled: Boolean = true
)
Parameters
requestJson: String

the request in JSON format in the standard webauthn web json.

isCloudBackupEnabled: Boolean = true

whether the credential should be backed up to cloud.

Public properties

isCloudBackupEnabled

Added in 1.5.0-beta01
val isCloudBackupEnabledBoolean

whether the credential should be backed up to cloud.

requestJson

Added in 1.5.0-beta01
val requestJsonString

the request in JSON format in the standard webauthn web json.