AbstractAccountAuthenticator.GetAuthToken Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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).
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.