BluetoothSocket 类

定义

已连接或连接蓝牙套接字。

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

注解

已连接或连接蓝牙套接字。

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

最常见的蓝牙套接字类型是 RFCOMM,这是 Android API 支持的类型。 RFCOMM 是一种面向连接的流式传输,通过蓝牙传输。 它也称为串行端口配置文件(SPP)。

若要创建 BluetoothSocket 用于连接到已知设备,请使用 BluetoothDevice#createRfcommSocketToServiceRecord BluetoothDevice.createRfcommSocketToServiceRecord()。 然后调用 #connect() 以尝试连接到远程设备。 此调用将阻止,直到建立连接或连接失败。

若要创建 BluetoothSocket 为服务器(或“主机”),请参阅 BluetoothServerSocket 文档。

连接套接字后,无论是作为客户端启动还是作为服务器接受,通过调用#getInputStream#getOutputStream打开 IO 流,以及分别检索java.io.InputStreamjava.io.OutputStream对象,这些流会自动连接到套接字。

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

<div class=“special reference”>

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

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

Java文档android.bluetooth.BluetoothSocket

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

字段

名称 说明
TypeLe
已过时.

LE 传输上的 L2CAP 套接字

属性

名称 说明
Class

返回此 Object的运行时类。

(继承自 Object)
ConnectionType

获取基础连接的类型。

Handle

基础 Android 实例的句柄。

(继承自 Object)
InputStream

获取与此套接字关联的输入流。

IsConnected

获取此套接字的连接状态(即是否有与远程设备的活动连接)。

JniIdentityHashCode

已连接或连接蓝牙套接字。

(继承自 Object)
JniPeerMembers

已连接或连接蓝牙套接字。

MaxReceivePacketSize

获取基础传输支持的最大接收数据包大小。

MaxTransmitPacketSize

获取基础传输的最大支持的传输数据包大小。

OutputStream

获取与此套接字关联的输出流。

PeerReference

已连接或连接蓝牙套接字。

(继承自 Object)
RemoteDevice

获取此套接字正在连接的远程设备,或连接到该套接字。

ThresholdClass

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

(继承自 Object)
ThresholdType

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

(继承自 Object)

方法

名称 说明
Clone()

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

(继承自 Object)
Close()

关闭对象并释放它保留的任何系统资源。

Connect()

尝试连接到远程设备。

ConnectAsync()

已连接或连接蓝牙套接字。

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端有效。

适用于