GetGoogleIdOption.Builder

class GetGoogleIdOption.Builder


GetGoogleIdOption 的建構工具。

摘要

公用建構函式

公開函式

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

設定是否支援使用與使用者帳戶連結的 Google 帳戶登入。

GetGoogleIdOption
GetGoogleIdOption.Builder
setAutoSelectEnabled(autoSelectEnabled: Boolean)

在要求中設定自動選取行為。

GetGoogleIdOption.Builder
setClaims(claims: List<Claim>)

設定要納入 Google ID 權杖的憑證附加資訊。

GetGoogleIdOption.Builder
setFilterByAuthorizedAccounts(filterByAuthorizedAccounts: Boolean)

設定是否只允許使用者從已授權登入您應用程式的 Google 帳戶中選取。

GetGoogleIdOption.Builder
setHostedDomainFilter(hostedDomainFilter: String?)

設定代管網域篩選器,將 Google 登入限制為特定 Google Workspace 網域中的帳戶。

GetGoogleIdOption.Builder
setNonce(nonce: String?)

設定產生 Google ID 權杖時要使用的隨機數。

GetGoogleIdOption.Builder
setRequestVerifiedPhoneNumber(requestVerifiedPhoneNumber: Boolean)

設定是否要在註冊期間要求提供已驗證的電話號碼。

GetGoogleIdOption.Builder
setServerClientId(serverClientId: String)

設定伺服器的用戶端 ID,做為登入期間產生的 Google ID 權杖的對象。

公用建構函式

Builder

Builder()

公開函式

associateLinkedAccounts

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

設定是否支援使用與使用者帳戶連結的 Google 帳戶登入。

選取這類憑證後,系統會先將所選帳戶連結的 Google ID 權杖存入伺服器,然後再傳回給您。與一般登入程序類似,後端可以使用 ID 權杖登入使用者。請注意,只有在首次使用這項憑證登入時,才會存放 ID 權杖。後續登入時,由於 ID 權杖已與使用者帳戶建立關聯,因此不需要再進行存證。

參數
linkedServiceId: String

將帳戶連結至 Google 帳戶時使用的服務 ID。

idTokenDepositionScopes: List<String>?

Google 需要的 OAuth 範圍,才能將 Google ID 權杖存入應用程式的後端伺服器。這項設定為選用項目,可以設為空值。只有在 Google 要求特定範圍才能存入 ID 權杖時,才需要提供這項資訊。

build

fun build(): GetGoogleIdOption

setAutoSelectEnabled

fun setAutoSelectEnabled(autoSelectEnabled: Boolean): GetGoogleIdOption.Builder

在要求中設定自動選取行為。

如果使用者選擇加入,系統會自動選取憑證,不必等待使用者操作 (例如輕觸「繼續」按鈕)。如果 1) 只有一個憑證可用於登入,且 2) 這個憑證不需要採取進一步行動 (例如已收集 Google 帳戶的資料共用權限),系統就會自動選取憑證。

setClaims

fun setClaims(claims: List<Claim>): GetGoogleIdOption.Builder

設定要納入 Google ID 權杖的憑證附加資訊。

如需可用聲明清單,請參閱說明文件。系統會忽略任何不支援的聲明。

參數
claims: List<Claim>

著作權聲明清單。

setFilterByAuthorizedAccounts

fun setFilterByAuthorizedAccounts(filterByAuthorizedAccounts: Boolean): GetGoogleIdOption.Builder

設定是否只允許使用者從已授權登入您應用程式的 Google 帳戶中選取。預設值為 true。

如果為 {@code true},使用者將無法選取任何 Google 帳戶,否則必須明確授權,才能與您的應用程式共用基本個人資料/電子郵件資料。這項功能可減少使用者登入時遇到的阻礙,並確保傳回的憑證適用於「回訪使用者」,但會限制使用者在裝置上所有 Google 帳戶中進行選擇。

參數
filterByAuthorizedAccounts: Boolean

是否只允許使用者從已授權登入應用程式的 Google 帳戶中選取

setHostedDomainFilter

fun setHostedDomainFilter(hostedDomainFilter: String?): GetGoogleIdOption.Builder

設定代管網域篩選器,將 Google 登入限制為特定 Google Workspace 網域中的帳戶。

如果傳遞空值或空字串,系統就不會進行篩選。

參數
hostedDomainFilter: String?

要篩選的網域 (例如 "example.com")

setNonce

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

設定產生 Google ID 權杖時要使用的隨機數。

參數
nonce: String?

在產生 ID 權杖時使用的隨機值

setRequestVerifiedPhoneNumber

fun setRequestVerifiedPhoneNumber(requestVerifiedPhoneNumber: Boolean): GetGoogleIdOption.Builder

設定是否要在註冊期間要求提供已驗證的電話號碼。

如要使用這項功能,[filterByAuthorizedAccounts] 欄位必須明確設為 false,因為這項功能僅適用於註冊期間。

setServerClientId

fun setServerClientId(serverClientId: String): GetGoogleIdOption.Builder

設定伺服器的用戶端 ID,做為登入期間產生的 Google ID 權杖的對象。

參數
serverClientId: String

要核發 ID 權杖的伺服器用戶端 ID