CreateCredentialResponse
public abstract class CreateCredentialResponse
CreateCustomCredentialResponse |
Base custom create response class for the credential creation operation made with the |
CreateDigitalCredentialResponse |
A response of creating a digital credential. |
CreatePasswordResponse |
A response of a password saving flow. |
CreatePublicKeyCredentialResponse |
A response of a public key credential (passkey) flow. |
CreateRestoreCredentialResponse |
A response of the |
Base response class for the credential creation operation made with the CreateCredentialRequest.
import androidx.credentials.CreateCustomCredentialResponse import androidx.credentials.CreatePasswordResponse import androidx.credentials.CreatePublicKeyCredentialResponse import androidx.credentials.Credential import androidx.credentials.CustomCredential import androidx.credentials.PublicKeyCredential when (response) { is CreatePasswordResponse -> // Password saved successfully, proceed to signed in experience. loginWithPassword() is CreatePublicKeyCredentialResponse -> // Validate and register the registration json from your server, and if successful // proceed to signed in experience. loginWithPasskey(response.registrationResponseJson) is CreateCustomCredentialResponse -> { // If you are also using any external sign-in libraries, parse them here with the // utility functions provided they provided. if (response.type == ExampleCustomCredential.TYPE) { try { val createExampleCustomCredentialResponse = CreateExampleCustomCredentialResponse.createFrom(response) loginWithExampleCustomCredential(createExampleCustomCredentialResponse) } catch (e: CreateExampleCustomCredentialResponse.ParsingException) { // Unlikely to happen. If it does, you likely need to update the dependency // version of your external sign-in library. Log.e(TAG, "Failed to parse a CreateExampleCustomCredentialResponse", e) } } else { Log.w( TAG, "Received unrecognized response type ${response.type}. " + "This shouldn't happen", ) } } else -> { Log.w( TAG, "Received unrecognized response type ${response.type}. This shouldn't happen", ) } }
Summary
Public methods |
|
|---|---|
static final @NonNull CreateCredentialResponse |
createFrom(@NonNull String type, @NonNull Bundle data)Parses the raw data into an instance of |
final @NonNull Bundle |
getData()the response data in the |
final @NonNull String |
getType()the credential type determined by the credential-type-specific subclass (e.g. the type for |
Public methods
createFrom
public static final @NonNull CreateCredentialResponse createFrom(@NonNull String type, @NonNull Bundle data)
Parses the raw data into an instance of CreateCredentialResponse.
It is recommended to construct a CreateCredentialResponse by directly instantiating a CreateCredentialResponse subclass, instead of using this API. This API should only be used by a small subset of system apps that reconstruct an existing object across IPC.
| Parameters | |
|---|---|
@NonNull String type |
matches |
@NonNull Bundle data |
matches |
getData
public final @NonNull Bundle getData()
the response data in the Bundle format
getType
public final @NonNull String getType()
the credential type determined by the credential-type-specific subclass (e.g. the type for CreatePasswordResponse is PasswordCredential.TYPE_PASSWORD_CREDENTIAL and for CreatePublicKeyCredentialResponse is PublicKeyCredential.TYPE_PUBLIC_KEY_CREDENTIAL)