Share via


PrinterDiscoverySession 類別

定義

這個類別會在印表機探索期間封裝列印服務與系統之間的互動。

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

備註

這個類別會在印表機探索期間封裝列印服務與系統之間的互動。 在印表機探索期間,您必須負責新增已探索的印表機、移除先前新增的印表機,以及更新已新增的印表機。

在此會話的存留期間,系統可能會要求您啟動和停止多次執行印表機探索。 您會收到開始印表機探索的呼叫 PrinterDiscoverySession#onStartPrinterDiscovery(List) ,以及停止印表機探索的 PrinterDiscoverySession#onStopPrinterDiscovery() 呼叫。 當系統不再對此會話探索到的印表機感興趣時,您會收到呼叫 #onDestroy() ,此時系統將不再呼叫會話,而且所有會話方法都不會執行任何動作。

叫用 會新增 PrinterDiscoverySession#addPrinters(List) 探索到的印表機。 叫用 會移除 PrinterDiscoverySession#removePrinters(List) 消失的印表機。 已新增透過呼叫 PrinterDiscoverySession#addPrinters(List) 來更新其屬性或功能已變更的印表機。 您可以透過 #getPrinters() 在此會話中新增的印表機取得,其中傳回的印表機將是您在會話期間回報之印表機的最新快照集。 印表機在 < 會話之間是強 > 式而非 < 強 > 式保存。

如果您需要更新某些印表機,系統會呼叫 #onValidatePrinters(List) 。 您可以新增印表機而不指定其功能。 這可讓您避免查詢所有探索到的印表機是否有其功能,而只在必要時查詢印表機的功能。 例如,系統會要求您在使用者選取印表機時更新印表機。 驗證印表機時,您不需要提供印表機的功能,但可能會這麼做。

如果系統想要持續更新印表機的狀態,您會收到呼叫 #onStartPrinterStateTracking(PrinterId) ,之後您必須盡最大努力讓系統持續更新印表機狀態和功能變更。 如果您未在新增印表機時提供印表機功能,您也必須 < 強 ><> 式更新印表機功能,否則將會忽略印表機。 當系統不再有興趣取得印表機的更新時,您會收到 對 的 #onStopPrinterStateTracking( PrinterId) 呼叫。

<strong > 注意: < /strong > 此類別中的所有回呼都會在主要應用程式執行緒上執行。 您也必須在主要應用程式執行緒上叫用此類別的任何方法。

android.printservice.PrinterDiscoverySession JAVA 檔。

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

建構函式

PrinterDiscoverySession()

建構函式。

PrinterDiscoverySession(IntPtr, JniHandleOwnership)

建立 JNI 物件的 Managed 標記法時所使用的建構函式;由執行時間呼叫。

屬性

Class

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

(繼承來源 Object)
Handle

基礎 Android 實例的控制碼。

(繼承來源 Object)
IsDestroyed

取得會話是否已終結。

IsPrinterDiscoveryStarted

取得是否啟動印表機探索。

JniIdentityHashCode

這個類別會在印表機探索期間封裝列印服務與系統之間的互動。

(繼承來源 Object)
JniPeerMembers

這個類別會在印表機探索期間封裝列印服務與系統之間的互動。

PeerReference

這個類別會在印表機探索期間封裝列印服務與系統之間的互動。

(繼承來源 Object)
Printers

取得此會話中報告的印表機。

ThresholdClass

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

ThresholdType

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

TrackedPrinters

取得應該追蹤的印表機。

方法

AddPrinters(IList<PrinterInfo>)

新增探索到的印表機。

Clone()

建立並傳回這個 物件的複本。

(繼承來源 Object)
Dispose()

這個類別會在印表機探索期間封裝列印服務與系統之間的互動。

(繼承來源 Object)
Dispose(Boolean)

這個類別會在印表機探索期間封裝列印服務與系統之間的互動。

(繼承來源 Object)
Equals(Object)

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

(繼承來源 Object)
GetHashCode()

傳回此物件的雜湊碼值。

(繼承來源 Object)
JavaFinalize()

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

(繼承來源 Object)
Notify()

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

(繼承來源 Object)
NotifyAll()

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

(繼承來源 Object)
OnDestroy()

通知您會話已終結。

OnRequestCustomPrinterIcon(PrinterId, CancellationSignal, CustomPrinterIconCallback)

由系統呼叫以要求印表機的自訂圖示。

OnStartPrinterDiscovery(IList<PrinterId>)

回呼要求您啟動印表機探索。

OnStartPrinterStateTracking(PrinterId)

回呼要求您開始追蹤印表機的狀態。

OnStopPrinterDiscovery()

回呼通知您應該停止印表機探索。

OnStopPrinterStateTracking(PrinterId)

回呼要求您停止追蹤印表機的狀態。

OnValidatePrinters(IList<PrinterId>)

回呼要求您驗證指定的印表機是否有效,也就是它們存在。

RemovePrinters(IList<PrinterId>)

移除新增的印表機。

SetHandle(IntPtr, JniHandleOwnership)

設定 Handle 屬性。

(繼承來源 Object)
ToArray<T>()

這個類別會在印表機探索期間封裝列印服務與系統之間的互動。

(繼承來源 Object)
ToString()

傳回物件的字串表示。

(繼承來源 Object)
UnregisterFromRuntime()

這個類別會在印表機探索期間封裝列印服務與系統之間的互動。

(繼承來源 Object)
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()

這個類別會在印表機探索期間封裝列印服務與系統之間的互動。

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

這個類別會在印表機探索期間封裝列印服務與系統之間的互動。

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

這個類別會在印表機探索期間封裝列印服務與系統之間的互動。

(繼承來源 Object)
IJavaPeerable.JniManagedPeerState

這個類別會在印表機探索期間封裝列印服務與系統之間的互動。

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

這個類別會在印表機探索期間封裝列印服務與系統之間的互動。

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

這個類別會在印表機探索期間封裝列印服務與系統之間的互動。

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

這個類別會在印表機探索期間封裝列印服務與系統之間的互動。

(繼承來源 Object)

擴充方法

JavaCast<TResult>(IJavaObject)

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

JavaCast<TResult>(IJavaObject)

這個類別會在印表機探索期間封裝列印服務與系統之間的互動。

GetJniTypeName(IJavaPeerable)

這個類別會在印表機探索期間封裝列印服務與系統之間的互動。

適用於