GetGoogleIdOption.Builder

public final class GetGoogleIdOption.Builder


GetGoogleIdOption 的构建器。

摘要

公共构造函数

公共方法

final @NonNull GetGoogleIdOption.Builder
associateLinkedAccounts(
    @NonNull String linkedServiceId,
    List<@NonNull String> idTokenDepositionScopes
)

设置是否支持使用与用户账号相关联的 Google 账号进行登录。

final @NonNull GetGoogleIdOption
final @NonNull GetGoogleIdOption.Builder
setAutoSelectEnabled(boolean autoSelectEnabled)

在请求中设置自动选择行为。

final @NonNull GetGoogleIdOption.Builder

设置要包含在 Google ID 令牌中的声明。

final @NonNull GetGoogleIdOption.Builder
setFilterByAuthorizedAccounts(boolean filterByAuthorizedAccounts)

设置是否仅允许用户从已获授权可登录您应用的 Google 账号中进行选择。

final @NonNull GetGoogleIdOption.Builder
setHostedDomainFilter(String hostedDomainFilter)

设置托管网域过滤器,以将 Google 登录限制为特定 Google Workspace 网域中的账号。

final @NonNull GetGoogleIdOption.Builder

设置生成 Google ID 令牌时要使用的随机数。

final @NonNull GetGoogleIdOption.Builder
setRequestVerifiedPhoneNumber(boolean requestVerifiedPhoneNumber)

设置在注册期间是否请求经过验证的电话号码。

final @NonNull GetGoogleIdOption.Builder
setServerClientId(@NonNull String serverClientId)

设置服务器的客户端 ID,以用作登录期间生成的 Google ID 令牌的受众群体。

公共构造函数

Builder

public Builder()

公共方法

associateLinkedAccounts

public final @NonNull GetGoogleIdOption.Builder associateLinkedAccounts(
    @NonNull String linkedServiceId,
    List<@NonNull String> idTokenDepositionScopes
)

设置是否支持使用与用户账号相关联的 Google 账号进行登录。

选择此类凭据后,系统会先将所选账号关联的 Google 账号的 Google ID 令牌存入您的服务器,然后再返回给您。与常规登录类似,您的后端可以使用 ID 令牌来让用户登录。请注意,ID 令牌存放仅在首次使用此凭据登录时发生。后续登录将不需要提供身份验证信息,因为 ID 令牌已与您用户的账号相关联。

参数
@NonNull String linkedServiceId

将账号与 Google 账号相关联时使用的服务 ID。

List<@NonNull String> idTokenDepositionScopes

Google 需要哪些 OAuth 范围才能将 Google ID 令牌存入您应用的后端服务器。此参数为可选参数,可以设置为 null。仅当 Google 要求提供特定范围才能存入 ID 令牌时,才需要提供此参数。

build

public final @NonNull GetGoogleIdOption build()

setAutoSelectEnabled

public final @NonNull GetGoogleIdOption.Builder setAutoSelectEnabled(boolean autoSelectEnabled)

在请求中设置自动选择行为。

对于选择启用的用户,“自动选择”功能可自动选择凭据,而无需等待用户操作(例如点按“继续”按钮)。如果满足以下条件,系统可以自动选择凭据:1) 只能使用一个凭据进行登录;2) 无需对该凭据执行进一步操作(例如,已为 Google 账号收集数据共享权限)。

setClaims

public final @NonNull GetGoogleIdOption.Builder setClaims(@NonNull List<@NonNull Claim> claims)

设置要包含在 Google ID 令牌中的声明。

如需查看可用声明的列表,请参阅文档。系统会忽略所有不受支持的声明。

参数
@NonNull List<@NonNull Claim> claims

声明列表。

setFilterByAuthorizedAccounts

public final @NonNull GetGoogleIdOption.Builder setFilterByAuthorizedAccounts(boolean filterByAuthorizedAccounts)

设置是否仅允许用户从已获授权可登录您应用的 Google 账号中进行选择。默认值为 true。

如果为 {@code true},用户将无法选择任何 Google 账号,否则这些账号需要明确授权才能与您的应用分享基本个人资料/电子邮件数据。这可能会减少登录用户流程中的一些摩擦,并保证返回的凭据是针对“回访用户”的,但会限制用户在设备上所有 Google 账号中进行选择的自由。

参数
boolean filterByAuthorizedAccounts

是否仅允许用户从已获授权登录您的应用的 Google 账号中进行选择

setHostedDomainFilter

public final @NonNull GetGoogleIdOption.Builder setHostedDomainFilter(String hostedDomainFilter)

设置托管网域过滤器,以将 Google 登录限制为特定 Google Workspace 网域中的账号。

传递 null 或空字符串将导致不进行过滤。

参数
String hostedDomainFilter

要过滤的网域(例如“example.com”)

setNonce

public final @NonNull GetGoogleIdOption.Builder setNonce(String nonce)

设置生成 Google ID 令牌时要使用的随机数。

参数
String nonce

在生成 ID 令牌期间使用的随机数

setRequestVerifiedPhoneNumber

public final @NonNull GetGoogleIdOption.Builder setRequestVerifiedPhoneNumber(boolean requestVerifiedPhoneNumber)

设置在注册期间是否请求经过验证的电话号码。

如需使用此功能,必须将 [filterByAuthorizedAccounts] 字段明确设置为 false,因为此功能仅在注册期间可用。

setServerClientId

public final @NonNull GetGoogleIdOption.Builder setServerClientId(@NonNull String serverClientId)

设置服务器的客户端 ID,以用作登录期间生成的 Google ID 令牌的受众群体。

参数
@NonNull String serverClientId

将向其签发 ID 令牌的服务器的客户端 ID