PrinterDiscoverySession 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
此類別封裝了印表機發現過程中,列印服務與系統之間的互動。
[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#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 |
回傳此 |
| 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 |
|---|---|
| IJavaPeerable.Disposed() |
此類別封裝了印表機發現過程中,列印服務與系統之間的互動。 (繼承來源 JavaObject) |
| IJavaPeerable.Finalized() |
此類別封裝了印表機發現過程中,列印服務與系統之間的互動。 (繼承來源 JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
此類別封裝了印表機發現過程中,列印服務與系統之間的互動。 (繼承來源 JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
此類別封裝了印表機發現過程中,列印服務與系統之間的互動。 (繼承來源 JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
此類別封裝了印表機發現過程中,列印服務與系統之間的互動。 (繼承來源 JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
此類別封裝了印表機發現過程中,列印服務與系統之間的互動。 (繼承來源 JavaObject) |
擴充方法
| 名稱 | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
取得實例 |
| JavaAs<TResult>(IJavaPeerable) |
試著強制 |
| JavaCast<TResult>(IJavaObject) |
執行 Android 執行時檢查型別轉換。 |
| JavaCast<TResult>(IJavaObject) |
此類別封裝了印表機發現過程中,列印服務與系統之間的互動。 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
試著強制 |