語言

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() 此方式取得,回傳印表機將為你在會話中回報的印表機的 up-to日期快照。 印表機在多個工作階段中持續<存在,但很強><>。

系統會呼叫你需要 #onValidatePrinters(List) 更新印表機。 你有可能在沒有指定功能的情況下新增印表機。 這讓你避免查詢所有已發現的印表機的功能,而是僅在必要時查詢印表機的功能。 例如,系統會要求你更新使用者選擇的印表機。 驗證印表機時,您不必提供印表機的功能,但可以提供。

如果系統需要持續更新印表機狀態,你就會接到電話 #onStartPrinterStateTracking(PrinterId) ,之後你必須盡力讓系統隨時掌握印表機狀態和功能的變化。 < > < >如果你在新增印表機時沒有提供,也必須強烈更新印表機功能,否則印表機會被忽略。 當系統不再關注列印機的更新時,您將收到一通電話。#onStopPrinterStateTracking( PrinterId)

<strong>注意: </strong> 此類別中的所有回調皆在主應用程式執行緒執行。 你也必須在主應用程式執行緒中呼叫這個類別的任何方法。

Java 文件 android.printservice.PrinterDiscoverySession。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

建構函式

名稱 Description
PrinterDiscoverySession()

構造 函數。

PrinterDiscoverySession(IntPtr, JniHandleOwnership)

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

屬性

名稱 Description
Class

回傳此 Object的執行時類別。

(繼承來源 Object)
Handle

底層 Android 實例的帳號。

(繼承來源 Object)
IsDestroyed

判斷會話是否被銷毀。

IsPrinterDiscoveryStarted

會知道是否開始列印發現。

JniIdentityHashCode

取得由互通執行時指派給此 Java 對等端的身份雜湊碼。

(繼承來源 Object)
JniManagedPeerState

此類別封裝了印表機發現過程中,列印服務與系統之間的互動。

(繼承來源 JavaObject)
JniPeerMembers

此類別封裝了印表機發現過程中,列印服務與系統之間的互動。

PeerReference

取得這個 Java 節點的 JNI 物件參考。

(繼承來源 Object)
Printers

這會讓印表機在這場會議中被回報。

ThresholdClass

此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。

ThresholdType

此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。

TrackedPrinters

負責追蹤應該追蹤的印表機。

方法

名稱 Description
AddPrinters(IList<PrinterInfo>)

新增已發現的印表機。

Clone()

建立並回傳此物件的副本。

(繼承來源 Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

此類別封裝了印表機發現過程中,列印服務與系統之間的互動。

(繼承來源 JavaObject)
Dispose()

釋放該 Java 節點所持有的資源。

(繼承來源 Object)
Dispose(Boolean)

釋放該 Java 節點所持有的資源。

(繼承來源 Object)
DisposeUnlessReferenced()

此類別封裝了印表機發現過程中,列印服務與系統之間的互動。

(繼承來源 JavaObject)
Equals(Object)

此類別封裝了印表機發現過程中,列印服務與系統之間的互動。

(繼承來源 JavaObject)
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)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

此類別封裝了印表機發現過程中,列印服務與系統之間的互動。

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

從這個 Java 陣列包裝器建立一個受管理陣列。

(繼承來源 Object)
ToString()

回傳物件的字串表示。

(繼承來源 Object)
UnregisterFromRuntime()

將此 Java 節點從互通執行時中取消註冊。

(繼承來源 Object)
Wait()

導致目前執行緒等待被喚醒,通常是透過 <em>通知</><em 或 em>中斷</em> 來喚醒。

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

會讓目前執行緒等待喚醒,通常是透過 <em>通知</><em 或 em>中斷</em>,或是經過一定的真實時間。

(繼承來源 Object)
Wait(Int64)

會讓目前執行緒等待喚醒,通常是透過 <em>通知</><em 或 em>中斷</em>,或是經過一定的真實時間。

(繼承來源 Object)

明確介面實作

名稱 Description
IJavaPeerable.Disposed()

此類別封裝了印表機發現過程中,列印服務與系統之間的互動。

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

此類別封裝了印表機發現過程中,列印服務與系統之間的互動。

(繼承來源 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

此類別封裝了印表機發現過程中,列印服務與系統之間的互動。

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

此類別封裝了印表機發現過程中,列印服務與系統之間的互動。

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

此類別封裝了印表機發現過程中,列印服務與系統之間的互動。

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

此類別封裝了印表機發現過程中,列印服務與系統之間的互動。

(繼承來源 JavaObject)

擴充方法

名稱 Description
GetJniTypeName(IJavaPeerable)

取得實例 self類型的 JNI 名稱。

JavaAs<TResult>(IJavaPeerable)

試著強制self輸入 TResult,檢查 強制在 Java 端是否有效。

JavaCast<TResult>(IJavaObject)

執行 Android 執行時檢查型別轉換。

JavaCast<TResult>(IJavaObject)

此類別封裝了印表機發現過程中,列印服務與系統之間的互動。

TryJavaCast<TResult>(IJavaPeerable, TResult)

試著強制self輸入 TResult,檢查 強制在 Java 端是否有效。

適用於