Compartilhar via


AbstractAccountAuthenticator.GetAuthToken Método

Definição

Obtém um authtoken para uma conta.

[Android.Runtime.Register("getAuthToken", "(Landroid/accounts/AccountAuthenticatorResponse;Landroid/accounts/Account;Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle;", "GetGetAuthToken_Landroid_accounts_AccountAuthenticatorResponse_Landroid_accounts_Account_Ljava_lang_String_Landroid_os_Bundle_Handler")]
public abstract Android.OS.Bundle? GetAuthToken (Android.Accounts.AccountAuthenticatorResponse? response, Android.Accounts.Account? account, string? authTokenType, Android.OS.Bundle? options);
[<Android.Runtime.Register("getAuthToken", "(Landroid/accounts/AccountAuthenticatorResponse;Landroid/accounts/Account;Ljava/lang/String;Landroid/os/Bundle;)Landroid/os/Bundle;", "GetGetAuthToken_Landroid_accounts_AccountAuthenticatorResponse_Landroid_accounts_Account_Ljava_lang_String_Landroid_os_Bundle_Handler")>]
abstract member GetAuthToken : Android.Accounts.AccountAuthenticatorResponse * Android.Accounts.Account * string * Android.OS.Bundle -> Android.OS.Bundle

Parâmetros

response
AccountAuthenticatorResponse

para enviar o resultado de volta para o AccountManager, nunca será nulo

account
Account

A conta cujas credenciais devem ser recuperadas, nunca será nula

authTokenType
String

O tipo de token de autenticação a ser recuperado, nunca será nulo

options
Bundle

um pacote de opções específicas do autenticador. Ele sempre contém AccountManager#KEY_CALLER_PID e AccountManager#KEY_CALLER_UID campos que permitirão ao autenticador saber a identidade do chamador.

Retornos

um resultado de pacote ou null se o resultado for retornado por meio da resposta.

Atributos

Exceções

se o autenticador não pôde atender à solicitação devido a um erro de rede

Comentários

Obtém um authtoken para uma conta.

Caso contrário null, o resultado Bundle conterá diferentes conjuntos de chaves, dependendo se um token foi emitido com sucesso e, se não, se um poderia ser emitido por meio de algum android.app.Activity.

Se um token não puder ser fornecido sem alguma atividade adicional, o Bundle deverá conter AccountManager#KEY_INTENT um Intentarquivo . Por outro lado, se não houver tal atividade, então um Bundle contendo AccountManager#KEY_ERROR_CODE e AccountManager#KEY_ERROR_MESSAGE deve ser devolvido.

Se um token puder ser emitido com êxito, a implementação deverá retornar o AccountManager#KEY_ACCOUNT_NAME e AccountManager#KEY_ACCOUNT_TYPE da conta associada ao token, bem como o AccountManager#KEY_AUTHTOKEN. Além disso AbstractAccountAuthenticator , implementações que se android:customTokens=true declaram também podem fornecer um valor longo não negativo #KEY_CUSTOM_TOKEN_EXPIRY contendo o carimbo de data/hora de expiração do tempo de expiração (em millis desde a época unix), os tokens serão armazenados em cache na memória com base no packageName/signature do aplicativo por quanto tempo foi especificado.

Os implementadores devem assumir que os tokens serão armazenados em cache com base na conta e no authTokenType. O sistema pode ignorar o conteúdo do pacote de opções fornecido ao determinar a reutilização de um token armazenado em cache. Além disso, os implementadores devem assumir que um tempo de expiração fornecido será tratado como aconselhamento não vinculativo.

Finalmente, observe que, para android:customTokens=false autenticadores, os tokens são armazenados em cache indefinidamente até que alguns clientes chamem AccountManager#invalidateAuthToken(String,String).

Documentação Java para android.accounts.AbstractAccountAuthenticator.getAuthToken(android.accounts.AccountAuthenticatorResponse, android.accounts.Account, java.lang.String, android.os.Bundle).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usado de acordo com os termos descritos na Creative Commons 2.5 Attribution License.

Aplica-se a