Beschreibung
Mit der chrome.bluetoothSocket API können Sie Daten über RFCOMM- und L2CAP-Verbindungen an Bluetooth-Geräte senden und von ihnen empfangen.
Verfügbarkeit
Manifest
Typen
AcceptError
Enum
"system_error"
Ein Systemfehler ist aufgetreten und die Verbindung kann möglicherweise nicht wiederhergestellt werden.
"not_listening"
Der Socket wartet nicht auf Verbindungen.
AcceptErrorInfo
Attribute
-
Fehler
Ein Fehlercode, der angibt, was schiefgelaufen ist.
-
errorMessage
String
Die Fehlermeldung.
-
socketId
Zahl
Die Server-Socket-ID.
AcceptInfo
Attribute
-
clientSocketId
Zahl
Die Client-Socket-ID, d.h. die Socket-ID der neu hergestellten Verbindung. Diese Socket-ID sollte nur mit Funktionen aus dem Namespace
chrome.bluetoothSocketverwendet werden. Beachten Sie, dass der Client-Socket anfangs pausiert ist und von der Anwendung explizit fortgesetzt werden muss, um Daten zu empfangen. -
socketId
Zahl
Die Server-Socket-ID.
CreateInfo
Attribute
-
socketId
Zahl
Die ID des neu erstellten Sockets. Socket-IDs, die mit dieser API erstellt wurden, sind nicht mit Socket-IDs kompatibel, die mit anderen APIs wie der
[sockets.tcp](../sockets_tcp/)API erstellt wurden.
ListenOptions
Attribute
-
backlog
number optional
Länge der Warteschlange des Sockets. Der Standardwert hängt vom Hostsubsystem des Betriebssystems ab.
-
Kanal
number optional
Der von
listenUsingRfcommverwendete RFCOMM-Kanal. Wenn angegeben, darf dieser Kanal nicht bereits verwendet werden, da der Methodenaufruf sonst fehlschlägt. Wenn keine Angabe erfolgt, wird automatisch ein nicht verwendeter Kanal zugewiesen. -
psm
number optional
Der von
listenUsingL2capverwendete L2CAP-PSM. Wenn angegeben, darf dieser PSM nicht bereits verwendet werden, da der Methodenaufruf sonst fehlschlägt. Wenn keine Angabe erfolgt, wird automatisch ein nicht verwendeter PSM zugewiesen.
ReceiveError
Enum
"disconnected"
Die Verbindung wurde getrennt.
"system_error"
Ein Systemfehler ist aufgetreten und die Verbindung kann möglicherweise nicht wiederhergestellt werden.
"not_connected"
Der Socket wurde nicht verbunden.
ReceiveErrorInfo
Attribute
-
Fehler
Ein Fehlercode, der angibt, was schiefgelaufen ist.
-
errorMessage
String
Die Fehlermeldung.
-
socketId
Zahl
Die Socket-ID.
ReceiveInfo
Attribute
-
Daten
ArrayBuffer
Die empfangenen Daten mit einer maximalen Größe von
bufferSize. -
socketId
Zahl
Die Socket-ID.
SocketInfo
Attribute
-
Adresse
String optional
Wenn der zugrunde liegende Socket verbunden ist, enthält er die Bluetooth-Adresse des Geräts, mit dem er verbunden ist.
-
bufferSize
number optional
Die Größe des Puffers, der zum Empfangen von Daten verwendet wird. Wenn keine Puffergröße explizit angegeben wurde, wird der Wert nicht bereitgestellt.
-
verbunden
boolean
Flag, das angibt, ob der Socket mit einem Remote-Peer verbunden ist.
-
name
String optional
Anwendungsdefinierter String, der dem Socket zugeordnet ist.
-
pausiert
boolean
Flag, das angibt, ob ein verbundener Socket seinen Peer daran hindert, weitere Daten zu senden, oder ob Verbindungsanfragen an einem überwachten Socket über das Ereignis
onAcceptweitergeleitet oder in der Warteschlange für die Überwachung eingereiht werden.setPausedansehen. Der Standardwert lautet „false“. -
nichtflüchtige
boolean
Flag, das angibt, ob der Socket geöffnet bleibt, wenn die Ereignisseite der Anwendung entladen wird (siehe
SocketProperties.persistent). Der Standardwert ist „false“. -
socketId
Zahl
Die Socket-ID.
-
uuid
String optional
Wenn der zugrunde liegende Socket verbunden ist, enthält er Informationen zur Dienst-UUID, mit der er verbunden ist. Wenn der zugrunde liegende Socket auf Verbindungen wartet, enthält er Informationen zur Dienst-UUID, auf der er auf Verbindungen wartet.
SocketProperties
Attribute
-
bufferSize
number optional
Die Größe des Puffers, der zum Empfangen von Daten verwendet wird. Der Standardwert ist 4096.
-
name
String optional
Ein anwendungsdefinierter String, der dem Socket zugeordnet ist.
-
nichtflüchtige
Boolesch optional
Flag, das angibt, ob der Socket geöffnet bleibt, wenn die Ereignisseite der Anwendung entladen wird (siehe Lebenszyklus der App verwalten). Der Standardwert ist
false.. Wenn die Anwendung geladen wird, können alle zuvor mit „persistent=true“ geöffneten Sockets mitgetSocketsabgerufen werden.
Methoden
close()
chrome.bluetoothSocket.close(
socketId: number,
callback?: function,
): Promise<void>
Trennt und löscht den Socket. Jeder erstellte Socket sollte nach der Verwendung geschlossen werden. Die Socket-ID ist nicht mehr gültig, sobald die Funktion aufgerufen wird. Der Socket wird jedoch garantiert erst geschlossen, wenn der Callback aufgerufen wird.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
callback
function optional
Der Parameter
callbacksieht so aus:() => void
Ausgabe
-
Promise<void>
Chrome 91 oder höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
connect()
chrome.bluetoothSocket.connect(
socketId: number,
address: string,
uuid: string,
callback?: function,
): Promise<void>
Verbindet den Socket mit einem Bluetooth-Remotegerät. Wenn der Vorgang connect erfolgreich abgeschlossen wurde, werden onReceive-Ereignisse ausgelöst, wenn Daten vom Peer empfangen werden. Wenn ein Netzwerkfehler auftritt, während die Laufzeit Pakete empfängt, wird ein onReceiveError-Ereignis ausgelöst. Danach wird für diesen Socket kein onReceive-Ereignis mehr ausgelöst, bis die Methode setPaused(false) aufgerufen wird.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
Adresse
String
Die Adresse des Bluetooth-Geräts.
-
uuid
String
Die UUID des Dienstes, zu dem eine Verbindung hergestellt werden soll.
-
callback
function optional
Der Parameter
callbacksieht so aus:() => void
Ausgabe
-
Promise<void>
Chrome 91 oder höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
create()
chrome.bluetoothSocket.create(
properties?: SocketProperties,
callback?: function,
): Promise<CreateInfo>
Erstellt einen Bluetooth-Socket.
Parameter
-
Properties
SocketProperties optional
Die Socket-Attribute (optional).
-
callback
function optional
Der Parameter
callbacksieht so aus:(createInfo: CreateInfo) => void
-
createInfo
Das Ergebnis der Socket-Erstellung.
-
Ausgabe
-
Promise<CreateInfo>
Chrome 91 oder höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
disconnect()
chrome.bluetoothSocket.disconnect(
socketId: number,
callback?: function,
): Promise<void>
Trennt die Verbindung zum Socket. Die Socket-ID bleibt gültig.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
callback
function optional
Der Parameter
callbacksieht so aus:() => void
Ausgabe
-
Promise<void>
Chrome 91 oder höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
getInfo()
chrome.bluetoothSocket.getInfo(
socketId: number,
callback?: function,
): Promise<SocketInfo>
Ruft den Status des angegebenen Sockets ab.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
callback
function optional
Der Parameter
callbacksieht so aus:(socketInfo: SocketInfo) => void
-
socketInfo
Objekt mit den Socket-Informationen.
-
Ausgabe
-
Promise<SocketInfo>
Chrome 91 oder höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
getSockets()
chrome.bluetoothSocket.getSockets(
callback?: function,
): Promise<SocketInfo[]>
Ruft die Liste der derzeit geöffneten Sockets ab, die zur Anwendung gehören.
Parameter
-
callback
function optional
Der Parameter
callbacksieht so aus:(sockets: SocketInfo[]) => void
-
Sockets
Array von Objekten mit Socket-Informationen.
-
Ausgabe
-
Promise<SocketInfo[]>
Chrome 91 oder höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
listenUsingL2cap()
chrome.bluetoothSocket.listenUsingL2cap(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
): Promise<void>
Auf Verbindungen über das L2CAP-Protokoll warten.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
uuid
String
Dienst-UUID, auf die gewartet werden soll.
-
Optionen
ListenOptions optional
Optionale zusätzliche Optionen für den Dienst.
-
callback
function optional
Der Parameter
callbacksieht so aus:() => void
Ausgabe
-
Promise<void>
Chrome 91 oder höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
listenUsingRfcomm()
chrome.bluetoothSocket.listenUsingRfcomm(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
): Promise<void>
Auf Verbindungen über das RFCOMM-Protokoll warten.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
uuid
String
Dienst-UUID, auf die gewartet werden soll.
-
Optionen
ListenOptions optional
Optionale zusätzliche Optionen für den Dienst.
-
callback
function optional
Der Parameter
callbacksieht so aus:() => void
Ausgabe
-
Promise<void>
Chrome 91 oder höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
send()
chrome.bluetoothSocket.send(
socketId: number,
data: ArrayBuffer,
callback?: function,
): Promise<number>
Sendet Daten über den angegebenen Bluetooth-Socket.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
Daten
ArrayBuffer
Die zu sendenden Daten.
-
callback
function optional
Der Parameter
callbacksieht so aus:(bytesSent: number) => void
-
bytesSent
Zahl
Die Anzahl der gesendeten Bytes.
-
Ausgabe
-
Promise<number>
Chrome 91 oder höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
setPaused()
chrome.bluetoothSocket.setPaused(
socketId: number,
paused: boolean,
callback?: function,
): Promise<void>
Aktiviert oder deaktiviert den Empfang von Nachrichten von einem Peer durch einen verbundenen Socket oder die Annahme neuer Verbindungen durch einen überwachenden Socket. Der Standardwert lautet „false“. Das Pausieren eines verbundenen Sockets wird von einer Anwendung normalerweise verwendet, um die von ihrem Peer gesendeten Daten zu drosseln. Wenn ein verbundener Socket pausiert wird, wird kein onReceive-Ereignis ausgelöst. Wenn ein Socket verbunden und nicht pausiert ist, werden onReceive-Ereignisse wieder ausgelöst, wenn Nachrichten empfangen werden. Wenn ein Listening-Socket pausiert wird, werden neue Verbindungen akzeptiert, bis der Backlog voll ist. Danach werden zusätzliche Verbindungsanfragen abgelehnt. onAccept-Ereignisse werden nur ausgelöst, wenn der Socket nicht pausiert ist.
Parameter
-
socketId
Zahl
-
pausiert
boolean
-
callback
function optional
Der Parameter
callbacksieht so aus:() => void
Ausgabe
-
Promise<void>
Chrome 91 oder höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
update()
chrome.bluetoothSocket.update(
socketId: number,
properties: SocketProperties,
callback?: function,
): Promise<void>
Aktualisiert die Socket-Attribute.
Parameter
-
socketId
Zahl
Die Socket-ID.
-
Properties
Die zu aktualisierenden Attribute.
-
callback
function optional
Der Parameter
callbacksieht so aus:() => void
Ausgabe
-
Promise<void>
Chrome 91 oder höherPromises werden nur für Manifest V3 und höher unterstützt. Auf anderen Plattformen müssen Callbacks verwendet werden.
Ereignisse
onAccept
chrome.bluetoothSocket.onAccept.addListener(
callback: function,
)
Ereignis, das ausgelöst wird, wenn eine Verbindung für einen bestimmten Socket hergestellt wurde.
Parameter
-
callback
Funktion
Der Parameter
callbacksieht so aus:(info: AcceptInfo) => void
-
Info
-
onAcceptError
chrome.bluetoothSocket.onAcceptError.addListener(
callback: function,
)
Ereignis, das ausgelöst wird, wenn ein Netzwerkfehler aufgetreten ist, während die Laufzeit auf neue Verbindungen am angegebenen Socket gewartet hat. Sobald dieses Ereignis ausgelöst wird, wird der Socket auf paused gesetzt und es werden keine weiteren onAccept-Ereignisse für diesen Socket ausgelöst.
Parameter
-
callback
Funktion
Der Parameter
callbacksieht so aus:(info: AcceptErrorInfo) => void
-
Info
-
onReceive
chrome.bluetoothSocket.onReceive.addListener(
callback: function,
)
Ereignis, das ausgelöst wird, wenn Daten für einen bestimmten Socket empfangen wurden.
Parameter
-
callback
Funktion
Der Parameter
callbacksieht so aus:(info: ReceiveInfo) => void
-
Info
-
onReceiveError
chrome.bluetoothSocket.onReceiveError.addListener(
callback: function,
)
Ereignis, das ausgelöst wird, wenn ein Netzwerkfehler aufgetreten ist, während die Laufzeit auf Daten am Socket gewartet hat. Sobald dieses Ereignis ausgelöst wird, wird der Socket auf paused gesetzt und es werden keine weiteren onReceive-Ereignisse für diesen Socket ausgelöst.
Parameter
-
callback
Funktion
Der Parameter
callbacksieht so aus:(info: ReceiveErrorInfo) => void
-
Info
-