Share via


AbstractAccountAuthenticator 類別

定義

用來建立 AccountAuthenticators 的抽象基類。

[Android.Runtime.Register("android/accounts/AbstractAccountAuthenticator", DoNotGenerateAcw=true)]
public abstract class AbstractAccountAuthenticator : Java.Lang.Object
[<Android.Runtime.Register("android/accounts/AbstractAccountAuthenticator", DoNotGenerateAcw=true)>]
type AbstractAccountAuthenticator = class
    inherit Object
繼承
AbstractAccountAuthenticator
屬性

備註

用來建立 AccountAuthenticators 的抽象基類。 若要成為驗證器,您必須擴充這個類別、提供抽象方法的實作,並撰寫服務,以使用動作AccountManager#ACTION_AUTHENTICATOR_INTENT以意圖叫用 時傳回服務android.app.Service#onBind(android.content.Intent)的結果#getIBinder()。 此服務必須在其 AndroidManifest.xml 檔案中指定下列意圖篩選和元數據標籤

&lt;intent-filter&gt;
                &lt;action android:name="android.accounts.AccountAuthenticator" /&gt;
              &lt;/intent-filter&gt;
              &lt;meta-data android:name="android.accounts.AccountAuthenticator"
                        android:resource="@xml/authenticator" /&gt;

屬性 android:resource 必須指向如下所示的資源:

&lt;account-authenticator xmlns:android="http://schemas.android.com/apk/res/android"
               android:accountType="typeOfAuthenticator"
               android:icon="@drawable/icon"
               android:smallIcon="@drawable/miniIcon"
               android:label="@string/label"
               android:accountPreferences="@xml/account_preferences"
            /&gt;

以您自己的資源取代圖示和標籤。 屬性 android:accountType 必須是可唯一識別驗證器的字串,而且會在上 AccountManager 呼叫 時,使用者所使用的相同字串,而且也會對應 Account#type 至您的帳戶。 android:icon 的其中一個使用者是 [帳戶 & 同步處理] 設定頁面,而 android:smallIcon 的其中一位使用者是聯繫人應用程式的索引卷標面板。

喜好設定屬性會指向PreferencesScreen xml 階層,其中包含可叫用以管理驗證器的PreferencesScreen 清單。 範例如下:

&lt;PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"&gt;
               &lt;PreferenceCategory android:title="@string/title_fmt" /&gt;
               &lt;PreferenceScreen
                    android:key="key1"
                    android:title="@string/key1_action"
                    android:summary="@string/key1_summary"&gt;
                    &lt;intent
                        android:action="key1.ACTION"
                        android:targetPackage="key1.package"
                        android:targetClass="key1.class" /&gt;
                &lt;/PreferenceScreen&gt;
            &lt;/PreferenceScreen&gt;

實作任何抽象方法的標準模式如下:<ul<>li> 如果提供的自變數足以完全滿足要求,則會執行此動作,並傳回Bundle包含結果的 。 <li> 如果驗證器需要使用者的信息來滿足要求,則會建立 Intent 活動,以提示使用者輸入資訊,然後執行要求。 這個意圖必須在套件組合中傳回為索引鍵 AccountManager#KEY_INTENT

活動必須在完成時傳回最終結果,因此意圖應該包含 AccountAuthenticatorResponse 做為 AccountManager#KEY_ACCOUNT_AUTHENTICATOR_RESPONSE。 然後,活動必須呼叫 AccountAuthenticatorResponse#onResultAccountAuthenticatorResponse#onError 完成時。 <li> 如果驗證器無法同步處理要求並傳回結果,則它可以選擇傳回 null,然後使用 AccountManagerResponse 在完成要求時傳送結果。 這個異步選項不適用於 #addAccount 必須同步完成的方法。 </ul>

下列每個抽象驗證器方法的描述不會描述要求處理的可能異步本質,而是只會描述輸入參數和預期的結果。

撰寫活動以滿足這些要求時,一定要傳入 AccountManagerResponse,並在活動完成 (或活動作者認為是回應) 的正確時間時,透過該回應傳回結果。

android.accounts.AbstractAccountAuthenticatorJava 檔。

此頁面的部分是根據 原始碼專案所建立和共用的工作進行修改,並根據 中所述的詞彙使用。

建構函式

AbstractAccountAuthenticator(Context)

用來建立 AccountAuthenticators 的抽象基類。

AbstractAccountAuthenticator(IntPtr, JniHandleOwnership)

建立 JNI 物件的 Managed 表示法時所使用的建構函式;由運行時間呼叫。

欄位

KeyCustomTokenExpiry

用於 long 到期時間的套件組合密鑰, (來自相關聯驗證令牌的 unix epoch) 。

屬性

Class

傳回這個 Object的運行時間類別。

(繼承來源 Object)
Handle

基礎Android實例的句柄。

(繼承來源 Object)
IBinder

用來建立 AccountAuthenticators 的抽象基類。

JniIdentityHashCode

用來建立 AccountAuthenticators 的抽象基類。

(繼承來源 Object)
JniPeerMembers

用來建立 AccountAuthenticators 的抽象基類。

PeerReference

用來建立 AccountAuthenticators 的抽象基類。

(繼承來源 Object)
ThresholdClass

此 API 支援 Mono for Android 基礎結構,並不適合直接從您的程式代碼使用。

ThresholdType

此 API 支援 Mono for Android 基礎結構,並不適合直接從您的程式代碼使用。

方法

AddAccount(AccountAuthenticatorResponse, String, String, String[], Bundle)

新增指定 accountType 的帳戶。

AddAccountFromCredentials(AccountAuthenticatorResponse, Account, Bundle)

根據裝置上其他使用者的驗證器實例所提供的認證建立帳戶,該使用者已選擇與此用戶共享帳戶。

Clone()

建立並傳回這個 對象的複本。

(繼承來源 Object)
ConfirmCredentials(AccountAuthenticatorResponse, Account, Bundle)

檢查使用者是否知道帳戶的認證。

Dispose()

用來建立 AccountAuthenticators 的抽象基類。

(繼承來源 Object)
Dispose(Boolean)

用來建立 AccountAuthenticators 的抽象基類。

(繼承來源 Object)
EditProperties(AccountAuthenticatorResponse, String)

傳回套件組合,其中包含可用來編輯屬性的活動意圖。

Equals(Object)

指出其他物件是否「等於」這個物件。

(繼承來源 Object)
FinishSession(AccountAuthenticatorResponse, String, Bundle)

完成 #startAddAccountSession 或 #startUpdateCredentials 啟動的會話,方法是使用 AccountManager 將帳戶安裝到裝置,或更新本機認證。

GetAccountCredentialsForCloning(AccountAuthenticatorResponse, Account)

傳回套件組合,其中包含在不同用戶上複製帳戶所需的任何專案。

GetAccountRemovalAllowed(AccountAuthenticatorResponse, Account)

檢查是否允許移除此帳戶。

GetAuthToken(AccountAuthenticatorResponse, Account, String, Bundle)

取得帳戶的驗證。

GetAuthTokenLabel(String)

針對指定的 authTokenType 要求驗證器是否有本地化的標籤。

GetHashCode()

傳回此物件的雜湊碼值。

(繼承來源 Object)
HasFeatures(AccountAuthenticatorResponse, Account, String[])

檢查帳戶是否支援所有指定的驗證器特定功能。

IsCredentialsUpdateSuggested(AccountAuthenticatorResponse, Account, String)

檢查是否建議更新帳戶認證。

JavaFinalize()

當垃圾收集判斷對象沒有其他參考時,由物件上的垃圾收集行程呼叫。

(繼承來源 Object)
Notify()

喚醒正在等候此物件的監視器的單一線程。

(繼承來源 Object)
NotifyAll()

喚醒正在等候此物件監視器的所有線程。

(繼承來源 Object)
SetHandle(IntPtr, JniHandleOwnership)

設定 Handle 屬性。

(繼承來源 Object)
StartAddAccountSession(AccountAuthenticatorResponse, String, String, String[], Bundle)

啟動新增帳戶會話,以向指定 accountType 的帳戶驗證使用者。

StartUpdateCredentialsSession(AccountAuthenticatorResponse, Account, String, Bundle)

要求使用者重新驗證帳戶,但延遲更新本機儲存的認證。

ToArray<T>()

用來建立 AccountAuthenticators 的抽象基類。

(繼承來源 Object)
ToString()

傳回物件的字串表示。

(繼承來源 Object)
UnregisterFromRuntime()

用來建立 AccountAuthenticators 的抽象基類。

(繼承來源 Object)
UpdateCredentials(AccountAuthenticatorResponse, Account, String, Bundle)

更新帳戶的本機預存認證。

Wait()

讓目前的線程等到喚醒為止,通常是藉由 <em>notified</em> 或 <em>interrupted</em> 來喚醒。

(繼承來源 Object)
Wait(Int64)

讓目前的線程等到喚醒為止,通常是<透過em>notified</em或em>interrupted</em>>,或<直到經過一定數量的實時為止。

(繼承來源 Object)
Wait(Int64, Int32)

讓目前的線程等到喚醒為止,通常是<透過em>notified</em或em>interrupted</em>>,或<直到經過一定數量的實時為止。

(繼承來源 Object)

明確介面實作

IJavaPeerable.Disposed()

用來建立 AccountAuthenticators 的抽象基類。

(繼承來源 Object)
IJavaPeerable.DisposeUnlessReferenced()

用來建立 AccountAuthenticators 的抽象基類。

(繼承來源 Object)
IJavaPeerable.Finalized()

用來建立 AccountAuthenticators 的抽象基類。

(繼承來源 Object)
IJavaPeerable.JniManagedPeerState

用來建立 AccountAuthenticators 的抽象基類。

(繼承來源 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

用來建立 AccountAuthenticators 的抽象基類。

(繼承來源 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

用來建立 AccountAuthenticators 的抽象基類。

(繼承來源 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

用來建立 AccountAuthenticators 的抽象基類。

(繼承來源 Object)

擴充方法

JavaCast<TResult>(IJavaObject)

執行 Android 執行時間檢查的類型轉換。

JavaCast<TResult>(IJavaObject)

用來建立 AccountAuthenticators 的抽象基類。

GetJniTypeName(IJavaPeerable)

用來建立 AccountAuthenticators 的抽象基類。

適用於