BluetoothServerSocket 类

定义

侦听蓝牙套接字。

[Android.Runtime.Register("android/bluetooth/BluetoothServerSocket", DoNotGenerateAcw=true)]
public sealed class BluetoothServerSocket : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ICloseable
[<Android.Runtime.Register("android/bluetooth/BluetoothServerSocket", DoNotGenerateAcw=true)>]
type BluetoothServerSocket = class
    inherit Object
    interface ICloseable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
继承
BluetoothServerSocket
属性
实现

注解

侦听蓝牙套接字。

蓝牙套接字的接口类似于 TCP 套接字的接口: java.net.Socketjava.net.ServerSocket。 在服务器端,使用 a BluetoothServerSocket 创建侦听服务器套接字。 当连接被 BluetoothServerSocket该连接接受时,它将返回一个新 BluetoothSocket 连接来管理连接。 在客户端上,使用单个 BluetoothSocket 来启动传出连接和管理连接。

对于蓝牙 BR/EDR,最常见的套接字类型是 RFCOMM,这是 Android API 支持的类型。 RFCOMM 是一种面向连接的流式传输,通过蓝牙 BR/EDR 传输。 它也称为串行端口配置文件(SPP)。 若要创建已准备好用于传入蓝牙 BR/EDR 连接的侦 BluetoothServerSocket 听,请使用 BluetoothAdapter#listenUsingRfcommWithServiceRecord BluetoothAdapter.listenUsingRfcommWithServiceRecord()

对于蓝牙 LE,套接字使用面向 LE 连接的通道 (CoC)。 LE CoC 是一种面向连接的流式传输,通过蓝牙 LE 传输,并且具有基于信用的流控制。 相应地,用于 BluetoothAdapter#listenUsingL2capChannel BluetoothAdapter.listenUsingL2capChannel() 创建一个已准备好用于传入蓝牙 LE CoC 连接的侦 BluetoothServerSocket 听。 对于 LE CoC,可用于 #getPsm() 获取对等方需要用于连接到套接字的协议/服务多路复用器(PSM)值。

创建侦听 BluetoothServerSocket 后,调用 #accept() 侦听传入的连接请求。 此调用将阻止,直到建立连接,此时,它将返回一个 BluetoothSocket 来管理连接。 获取连接BluetoothSocket后,最好在不再需要接受连接时调用#close()BluetoothServerSocketBluetoothServerSocket关闭将<不></em> 关闭返回BluetoothSocket的 。

BluetoothServerSocket 是线程安全的。 具体而言, #close 始终会立即中止正在进行的操作并关闭服务器套接字。

<div class=“special reference”>

<h3>开发人员指南</h3>

有关使用蓝牙的详细信息,请阅读 蓝牙 开发人员指南。 </Div>

Java文档android.bluetooth.BluetoothServerSocket

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

属性

名称 说明
Class

返回此 Object的运行时类。

(继承自 Object)
Handle

基础 Android 实例的句柄。

(继承自 Object)
JniIdentityHashCode

侦听蓝牙套接字。

(继承自 Object)
JniPeerMembers

侦听蓝牙套接字。

PeerReference

侦听蓝牙套接字。

(继承自 Object)
Psm

返回侦听 L2CAP 连接导向通道(CoC)服务器套接字的分配动态协议/服务多路复用器(PSM)值。

ThresholdClass

此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。

(继承自 Object)
ThresholdType

此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。

(继承自 Object)

方法

名称 说明
Accept()

在建立连接之前阻止。

Accept(Int32)

在建立连接之前阻止,超时。

AcceptAsync()

侦听蓝牙套接字。

AcceptAsync(Int32)

侦听蓝牙套接字。

Clone()

创建并返回此对象的副本。

(继承自 Object)
Close()

立即关闭此套接字并释放所有关联的资源。

Dispose()

侦听蓝牙套接字。

(继承自 Object)
Dispose(Boolean)

侦听蓝牙套接字。

(继承自 Object)
Equals(Object)

指示其他对象是否“等于”此对象。

(继承自 Object)
GetHashCode()

返回对象的哈希代码值。

(继承自 Object)
JavaFinalize()

当垃圾回收确定不再引用该对象时,由对象上的垃圾回收器调用。

(继承自 Object)
Notify()

唤醒正在等待此对象的监视器的单个线程。

(继承自 Object)
NotifyAll()

唤醒正在等待此对象的监视器的所有线程。

(继承自 Object)
SetHandle(IntPtr, JniHandleOwnership)

设置 Handle 属性。

(继承自 Object)
ToArray<T>()

侦听蓝牙套接字。

(继承自 Object)
ToString()

返回对象的字符串表示形式。

(继承自 Object)
UnregisterFromRuntime()

侦听蓝牙套接字。

(继承自 Object)
Wait()

使当前线程等待,直到唤醒它,通常是通过 em 通知/em> 或 <em>interrupted</em>。<><

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

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

(继承自 Object)
Wait(Int64)

使当前线程等待直到唤醒,通常是通过 <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)

扩展方法

名称 说明
GetJniTypeName(IJavaPeerable)

获取实例 self类型的 JNI 名称。

JavaAs<TResult>(IJavaPeerable)

尝试强制self键入TResult,检查强制是否在Java端有效。

JavaCast<TResult>(IJavaObject)

执行 Android 运行时检查的类型转换。

JavaCast<TResult>(IJavaObject)

侦听蓝牙套接字。

TryJavaCast<TResult>(IJavaPeerable, TResult)

尝试强制self键入TResult,检查强制是否在Java端有效。

适用于