GetGoogleIdOption.Builder

class GetGoogleIdOption.Builder


A Builder for GetGoogleIdOption.

Summary

Public constructors

Public functions

GetGoogleIdOption.Builder
associateLinkedAccounts(
    linkedServiceId: String,
    idTokenDepositionScopes: List<String>?
)

Sets whether to support sign-in using Google accounts that are linked to your users' accounts.

GetGoogleIdOption
GetGoogleIdOption.Builder
setAutoSelectEnabled(autoSelectEnabled: Boolean)

Sets the auto-select behavior in the request.

GetGoogleIdOption.Builder
setFilterByAuthorizedAccounts(filterByAuthorizedAccounts: Boolean)

Sets whether to only allow the user to select from Google accounts that are already authorized to sign in to your application.

GetGoogleIdOption.Builder
setNonce(nonce: String?)

Sets the nonce to use when generating a Google ID token.

GetGoogleIdOption.Builder
setRequestVerifiedPhoneNumber(requestVerifiedPhoneNumber: Boolean)

Sets whether to request for a verified phone number during sign-ups.

GetGoogleIdOption.Builder
setServerClientId(serverClientId: String)

Sets the server's client ID to use as the audience for Google ID tokens generated during the sign-in.

Public constructors

Builder

Builder()

Public functions

associateLinkedAccounts

fun associateLinkedAccounts(
    linkedServiceId: String,
    idTokenDepositionScopes: List<String>?
): GetGoogleIdOption.Builder

Sets whether to support sign-in using Google accounts that are linked to your users' accounts.

When such a credential is selected, a Google ID token for the Google account that the selected account is linked to, will first be deposited to your server and then returned to you. Similar to the regular sign-in, your backend could use the ID token to sign the user in. Note that, the ID token deposition will only happen the first time signing in, using this credential. Subsequent sign-ins will not require a deposition, since the ID token will already have been associated with your user's account.

Parameters
linkedServiceId: String

service ID used when linking accounts to a Google account.

idTokenDepositionScopes: List<String>?

Oauth scopes that Google will need to deposit a Google ID token to your application's backend server. This is optional and can be set to null. Only required if Google requires particular scopes to be able to deposit the ID token.

build

fun build(): GetGoogleIdOption

setAutoSelectEnabled

fun setAutoSelectEnabled(autoSelectEnabled: Boolean): GetGoogleIdOption.Builder

Sets the auto-select behavior in the request.

For users who opt-in, Auto Select allows a credential to be selected automatically without waiting for a user action (such as tapping on the "continue" button). A credential can be auto selected if 1) only one credential can be used for sign-in; and 2) no further actions need to be taken for this credential (for example, data sharing permissions are already collected for a Google account).

setFilterByAuthorizedAccounts

fun setFilterByAuthorizedAccounts(filterByAuthorizedAccounts: Boolean): GetGoogleIdOption.Builder

Sets whether to only allow the user to select from Google accounts that are already authorized to sign in to your application. The default value is true.

If {@code true}, the user will not be able to select any Google account that would otherwise require explicit authorization to share basic profile/email data with your application. This may reduce some friction in the sign-in user journey, and guarantees that the returned credential is for a "returning user", but limits the user's freedom to choose among all the Google accounts on the device.

Parameters
filterByAuthorizedAccounts: Boolean

whether to only allow the user to select from Google accounts that are already authorized to sign in to your application

setNonce

fun setNonce(nonce: String?): GetGoogleIdOption.Builder

Sets the nonce to use when generating a Google ID token.

Parameters
nonce: String?

the nonce to use during ID token generation

setRequestVerifiedPhoneNumber

fun setRequestVerifiedPhoneNumber(requestVerifiedPhoneNumber: Boolean): GetGoogleIdOption.Builder

Sets whether to request for a verified phone number during sign-ups.

In order to use this feature, the [filterByAuthorizedAccounts] field must be explicitly set to false, because this feature is only available during sign-ups.

setServerClientId

fun setServerClientId(serverClientId: String): GetGoogleIdOption.Builder

Sets the server's client ID to use as the audience for Google ID tokens generated during the sign-in.

Parameters
serverClientId: String

the client ID of the server to which the ID token will be issued