Partager via


BluetoothDevice.CreateRfcommSocketToServiceRecord(UUID) Method

Definition

Create an RFCOMM BluetoothSocket ready to start a secure outgoing connection to this remote device using SDP lookup of uuid.

[Android.Runtime.Register("createRfcommSocketToServiceRecord", "(Ljava/util/UUID;)Landroid/bluetooth/BluetoothSocket;", "")]
[Android.Runtime.RequiresPermission("android.permission.BLUETOOTH_CONNECT")]
public Android.Bluetooth.BluetoothSocket? CreateRfcommSocketToServiceRecord (Java.Util.UUID? uuid);
[<Android.Runtime.Register("createRfcommSocketToServiceRecord", "(Ljava/util/UUID;)Landroid/bluetooth/BluetoothSocket;", "")>]
[<Android.Runtime.RequiresPermission("android.permission.BLUETOOTH_CONNECT")>]
member this.CreateRfcommSocketToServiceRecord : Java.Util.UUID -> Android.Bluetooth.BluetoothSocket

Parameters

uuid
UUID

service record uuid to lookup RFCOMM channel

Returns

a RFCOMM BluetoothServerSocket ready for an outgoing connection

Attributes

Exceptions

on error, for example Bluetooth not available, or insufficient permissions

Remarks

Create an RFCOMM BluetoothSocket ready to start a secure outgoing connection to this remote device using SDP lookup of uuid.

This is designed to be used with BluetoothAdapter#listenUsingRfcommWithServiceRecord for peer-peer Bluetooth applications.

Use BluetoothSocket#connect to initiate the outgoing connection. This will also perform an SDP lookup of the given uuid to determine which channel to connect to.

The remote device will be authenticated and communication on this socket will be encrypted.

Use this socket only if an authenticated socket link is possible. Authentication refers to the authentication of the link key to prevent person-in-the-middle type of attacks. For example, for Bluetooth 2.1 devices, if any of the devices does not have an input and output capability or just has the ability to display a numeric key, a secure socket connection is not possible. In such a case, use #createInsecureRfcommSocketToServiceRecord. For more details, refer to the Security Model section 5.2 (vol 3) of Bluetooth Core Specification version 2.1 + EDR.

Hint: If you are connecting to a Bluetooth serial board then try using the well-known SPP UUID 00001101-0000-1000-8000-00805F9B34FB. However if you are connecting to an Android peer then please generate your own unique UUID.

Java documentation for android.bluetooth.BluetoothDevice.createRfcommSocketToServiceRecord(java.util.UUID).

Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.

Applies to