AutofillManager 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
類別 AutofillManager
提供應用程式和自訂檢視與自動填滿架構生命週期整合的方式。
[Android.Runtime.Register("android/view/autofill/AutofillManager", ApiSince=26, DoNotGenerateAcw=true)]
public sealed class AutofillManager : Java.Lang.Object
[<Android.Runtime.Register("android/view/autofill/AutofillManager", ApiSince=26, DoNotGenerateAcw=true)>]
type AutofillManager = class
inherit Object
- 繼承
- 屬性
備註
類別 AutofillManager
提供應用程式和自訂檢視與自動填滿架構生命週期整合的方式。
若要瞭解如何在應用程式中使用自動填入,請閱讀自動填寫架構指南。
<h3 id=「autofill-lifecycle」 > Autofill lifecycle < /h3>
自動填滿生命週期會從建立與活動內容相關聯的自動填滿內容開始。 當第一次在活動內容中呼叫下列其中一種方法,且目前使用者已啟用自動填入服務時,就會建立自動填滿內容:
<ul > li li #notifyViewEntered(View)
>< / ><><#notifyViewEntered(View, int, Rect)
#requestAutofill(View)
ul <>
一般而言,當活動的第一個檢視為焦點時,會自動建立內容,因為 View.onFocusChanged()
會間接呼叫 #notifyViewEntered(View)
。 例如,應用程式開發人員可以呼叫 #requestAutofill(View)
來明確建立它 (,自訂檢視開發人員可以在文字欄位檢視中提供內容功能表動作,讓使用者手動要求自動填入) 。
建立內容之後,Android 系統會在 android.view.ViewStructure
所有應用程式視窗的根檢視中呼叫 View#dispatchProvideAutofillStructure(android.view.ViewStructure, int)
,以建立代表檢視階層的 。 根據預設, dispatchProvideAutofillStructure()
會導致階層中每個檢視的後續呼叫 View#onProvideAutofillStructure(android.view.ViewStructure, int)
和 View#onProvideAutofillVirtualStructure(android.view.ViewStructure, int)
。
android.view.ViewStructure
結果接著會傳遞至自動填入服務,以剖析其尋找可自動填入的檢視。 如果服務找到這類檢視,它會將資料結構傳回 Android 系統,其中包含下列選擇性資訊:
<ul >< li > 資料集,用來自動填入活動中檢視的子集。 <li > 服務可儲存其值以供未來自動填入的檢視識別碼。 </ul>
當服務傳回資料集時,Android 系統會顯示與檢視相關聯的自動填滿資料集選擇器 UI,當檢視焦點放在 ,而且是資料集的一部分時。 透過 註冊 AutofillCallback
#registerCallback(AutofillCallback)
,即可在 UI 顯示時通知應用程式。 當使用者從 UI 選取資料集時,系統會透過呼叫 View#autofill(AutofillValue)
或 View#autofill(SparseArray)
自動填入資料集中的所有檢視。
當服務傳回易懂檢視的識別碼時,Android 系統會持續追蹤對這些檢視所做的變更,以便用來判斷稍後是否顯示自動填入儲存 UI。
然後當發生下列其中一項時,內容就會完成:
<ul >< li >#commit()
稱為 ,或所有易懂的檢視都消失了。 <li >#cancel()
稱為。 </ul>
最後, (認可自動填滿內容之後,亦即,如果未取消) ,Android 系統會在可輕易檢視的值變更時顯示自動填入儲存 UI。 如果使用者選取 [儲存] 選項,則檢視的目前值會傳送至自動填入服務。
<h3 id=「additional-notes」 > Additional notes < /h3>
從任何執行緒呼叫 AutofillManager
方法是安全的。
的 android.view.autofill.AutofillManager
JAVA 檔。
此頁面的部分是根據所建立和共用的工作進行修改,並根據 2.5 屬性授權中所述的詞彙來使用。
欄位
ExtraAssistStructure |
意圖額外:擷取填滿畫面的輔助結構。 |
ExtraAuthenticationResult |
意圖額外:驗證作業的結果。 |
ExtraAuthenticationResultEphemeralDataset |
意圖額外:驗證作業結果隨附 |
ExtraClientState |
意圖額外:所提供的 |
ExtraInlineSuggestionsRequest |
意圖額外:自動 |
屬性
AutofillServiceComponentName |
傳回為目前使用者啟用的 |
AvailableFieldClassificationAlgorithms |
取得目前可用於欄位分類的所有演算法名稱。 |
Class |
傳回這個 |
DefaultFieldClassificationAlgorithm |
取得用於欄位分類的預設演算法名稱。 |
Handle |
基礎 Android 實例的控制碼。 (繼承來源 Object) |
HasEnabledAutofillServices |
|
IsAutofillSupported |
|
IsEnabled |
檢查是否為目前使用者啟用自動填入。 |
IsFieldClassificationEnabled |
檢查欄位分類是否已啟用。 |
JniIdentityHashCode |
類別 |
JniPeerMembers |
類別 |
NextAutofillId |
取得活動內容下一個唯一的自動填入識別碼。 |
PeerReference |
類別 |
ThresholdClass |
此 API 支援適用于 Android 的 Mono 基礎結構,並不適合直接從您的程式碼使用。 (繼承來源 Object) |
ThresholdType |
此 API 支援適用于 Android 的 Mono 基礎結構,並不適合直接從您的程式碼使用。 (繼承來源 Object) |
UserData |
取得用於欄位分類的使用者資料。 -或- 設定 |
UserDataId |
取得用於欄位分類的 |
方法
Cancel() |
呼叫 以指出應該取消目前的自動填滿內容。 |
Clone() |
建立並傳回這個 物件的複本。 (繼承來源 Object) |
Commit() |
呼叫 以指出應該認可目前的自動填滿內容。 |
DisableAutofillServices() |
如果呼叫此 API 的應用程式已啟用自動填入服務,將會停用。 |
Dispose() |
類別 |
Dispose(Boolean) |
類別 |
Equals(Object) |
指出其他物件是否「等於」這個物件。 (繼承來源 Object) |
GetHashCode() |
傳回此物件的雜湊碼值。 (繼承來源 Object) |
JavaFinalize() |
當垃圾收集判斷物件不再參考物件時,垃圾收集行程會在物件上呼叫。 (繼承來源 Object) |
Notify() |
喚醒正在等候此物件監視器的單一線程。 (繼承來源 Object) |
NotifyAll() |
喚醒正在等候此物件監視器的所有線程。 (繼承來源 Object) |
NotifyValueChanged(View) |
呼叫 以指出可 |
NotifyValueChanged(View, Int32, AutofillValue) |
呼叫 以指出自動填滿虛擬檢視的值已變更。 |
NotifyViewClicked(View) |
呼叫 以指出 |
NotifyViewClicked(View, Int32) |
呼叫 以指出已按一下虛擬檢視。 |
NotifyViewEntered(View) |
當輸入支援自動填入的 時 |
NotifyViewEntered(View, Int32, Rect) |
當輸入支援自動填入的虛擬檢視時呼叫。 |
NotifyViewExited(View) |
當 |
NotifyViewExited(View, Int32) |
當支援自動填滿的虛擬檢視結束時呼叫。 |
NotifyViewVisibilityChanged(View, Boolean) |
當可見度變更時呼叫 |
NotifyViewVisibilityChanged(View, Int32, Boolean) |
虛擬檢視的可見度變更時呼叫。 |
NotifyVirtualViewsReady(View, SparseArray) |
當虛擬檢視準備好供使用者自動填入時呼叫。 |
RegisterCallback(AutofillManager+AutofillCallback) |
|
RequestAutofill(View) |
明確要求新的自動填滿內容。 |
RequestAutofill(View, Int32, Rect) |
明確要求虛擬檢視的新自動填滿內容。 |
SetHandle(IntPtr, JniHandleOwnership) |
設定 Handle 屬性。 (繼承來源 Object) |
ShowAutofillDialog(View) |
如果自動填滿建議 對話方塊樣式 UI 可供 使用 |
ShowAutofillDialog(View, Int32) |
如果自動填滿建議 對話方塊樣式 UI 適用于虛擬 |
ToArray<T>() |
類別 |
ToString() |
傳回物件的字串表示。 (繼承來源 Object) |
UnregisterCallback(AutofillManager+AutofillCallback) |
取消註冊 |
UnregisterFromRuntime() |
類別 |
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() |
類別 |
IJavaPeerable.DisposeUnlessReferenced() |
類別 |
IJavaPeerable.Finalized() |
類別 |
IJavaPeerable.JniManagedPeerState |
類別 |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
類別 |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
類別 |
IJavaPeerable.SetPeerReference(JniObjectReference) |
類別 |
擴充方法
JavaCast<TResult>(IJavaObject) |
執行 Android 執行時間檢查的類型轉換。 |
JavaCast<TResult>(IJavaObject) |
類別 |
GetJniTypeName(IJavaPeerable) |
類別 |