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> 此类中的所有回调都在main应用程序线程上执行。 还必须在main应用程序线程上调用此类的任何方法。

android.printservice.PrinterDiscoverySessionJava 文档。

此页面的某些部分是基于 创建和共享的工作进行的修改,并根据 署名许可中所述的条款使用。

构造函数

PrinterDiscoverySession()

构造函数。

PrinterDiscoverySession(IntPtr, JniHandleOwnership)

创建 JNI 对象的托管表示形式时使用的构造函数;由运行时调用。

属性

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 <通知/em> 或 <em>interrupted</em>。<>

(继承自 Object)
Wait(Int64)

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<>

(继承自 Object)
Wait(Int64, Int32)

导致当前线程等待,直到它被唤醒,通常是通过 em <通知/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)

此类封装打印机发现期间打印服务与系统之间的交互。

适用于