AbstractAccountAuthenticator.GetAuthToken メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
アカウントの認証トークンを取得します。
[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
パラメーター
- response
- AccountAuthenticatorResponse
結果を AccountManager に送り返す場合、null になることはありません
- account
- Account
資格情報を取得するアカウントが null になることはありません
- authTokenType
- String
取得する認証トークンの種類は null になることはありません
- options
- Bundle
認証子固有のオプションのバンドル。 常に と AccountManager#KEY_CALLER_UID
フィールドが含まれていますAccountManager#KEY_CALLER_PID
。これにより、Authenticator に呼び出し元の ID が認識されます。
戻り値
結果が応答を介して返される場合は、Bundle の結果または null。
- 属性
例外
ネットワーク エラーが原因で認証子が要求を受け入れられなかった場合
注釈
アカウントの認証トークンを取得します。
そうでないnull
場合、トークンが正常に発行されたかどうかと、そうでない場合は、何らかの android.app.Activity
を介して発行できるかどうかに応じて、結果としてBundle
異なるキーセットが含まれます。
追加のアクティビティなしでトークンを指定できない場合は、Bundle に関連付けられた Intent
が含まれているAccountManager#KEY_INTENT
必要があります。 一方、そのようなアクティビティがない場合は、 と を含む AccountManager#KEY_ERROR_CODE
AccountManager#KEY_ERROR_MESSAGE
Bundle を返す必要があります。
トークンを正常に発行できる場合、実装では、トークンAccountManager#KEY_AUTHTOKEN
に関連付けられている アカウントの と AccountManager#KEY_ACCOUNT_TYPE
を返すAccountManager#KEY_ACCOUNT_NAME
必要があります。 さらに AbstractAccountAuthenticator
、自身 android:customTokens=true
を宣言する実装では、有効期限の有効期限のタイムスタンプ (unix エポック以降ミリ単位) を含む負 #KEY_CUSTOM_TOKEN_EXPIRY
以外の長い値を提供することもできます。トークンは、指定された期間、アプリケーションの packageName/signature に基づいてメモリにキャッシュされます。
実装者は、トークンが account と authTokenType に基づいてキャッシュされることを想定する必要があります。 システムは、キャッシュされたトークンを再利用することを決定するときに、指定されたオプション Bundle の内容を無視できます。 さらに、実装者は、指定された有効期限がバインドされていないアドバイスとして扱われると想定する必要があります。
最後に、認証子の場合 android:customTokens=false
、一部のクライアントが を呼び出 AccountManager#invalidateAuthToken(String,String)
すまで、トークンは無期限にキャッシュされることに注意してください。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。