Descrição
Use a API chrome.bluetoothSocket
para enviar e receber dados para dispositivos Bluetooth usando conexões RFCOMM e L2CAP.
Manifesto
Tipos
AcceptError
Tipo enumerado
"system_error"
Ocorreu um erro do sistema e a conexão pode ser irrecuperável.
"not_listening"
O soquete não está ouvindo.
AcceptErrorInfo
Propriedades
-
error
Um código de erro indicando o que deu errado.
-
errorMessage
string
A mensagem de erro.
-
socketId
number
O identificador do soquete do servidor.
AcceptInfo
Propriedades
-
clientSocketId
number
O identificador de soquete do cliente, ou seja, o identificador do soquete da conexão recém-estabelecida. Esse identificador de soquete deve ser usado apenas com funções do namespace
chrome.bluetoothSocket
. Observe que o soquete do cliente está inicialmente pausado e precisa ser explicitamente retomado pelo aplicativo para começar a receber os dados. -
socketId
number
O identificador do soquete do servidor.
CreateInfo
Propriedades
-
socketId
number
O ID do soquete recém-criado. Os IDs de soquete criados com essa API não são compatíveis com aqueles criados com outras APIs, como a API
[
sockets.tcp](../sockets_tcp/)
.
ListenOptions
Propriedades
-
lista de pendências
número opcional
Comprimento da fila de detecção do soquete. O valor padrão depende do subsistema host do sistema operacional.
-
canal
número opcional
O canal RFCOMM usado por
listenUsingRfcomm
. Se especificado, esse canal não pode estar em uso anteriormente ou a chamada do método falhará. Quando não é especificado, um canal não utilizado é alocado automaticamente. -
ps.
número opcional
O PSM do L2CAP usado por
listenUsingL2cap
. Se especificado, esse PSM não pode estar em uso anteriormente ou a chamada do método falhará. Quando não é especificado, um PSM não utilizado é alocado automaticamente.
ReceiveError
Tipo enumerado
"desconectado"
A conexão foi desconectada.
"system_error"
Ocorreu um erro do sistema e a conexão pode ser irrecuperável.
"not_linked"
O soquete não foi conectado.
ReceiveErrorInfo
Propriedades
-
error
Um código de erro indicando o que deu errado.
-
errorMessage
string
A mensagem de erro.
-
socketId
number
O identificador do soquete.
ReceiveInfo
Propriedades
-
dados
ArrayBuffer
Os dados recebidos, com um tamanho máximo de
bufferSize
. -
socketId
number
O identificador do soquete.
SocketInfo
Propriedades
-
endereço
string opcional
Se o soquete estiver conectado, ele contém o endereço Bluetooth do dispositivo a que ele está conectado.
-
bufferSize
número opcional
O tamanho do buffer usado para receber dados. Se nenhum tamanho de buffer tiver sido especificado explicitamente, o valor não será fornecido.
-
conectado
boolean
Sinalização que indica se o soquete está conectado a um peering remoto.
-
name
string opcional
String definida pelo aplicativo associada ao soquete.
-
pausado
boolean
Sinalização que indica se um soquete conectado impede o peering de enviar mais dados ou se as solicitações de conexão em um soquete de detecção são despachadas pelo evento
onAccept
ou colocadas na fila no backlog da fila de detecção. Consulte ossetPaused
. O valor padrão é "false". -
permanentes
boolean
Sinalização que indica se o soquete permanece aberto quando a página de eventos do aplicativo é descarregada (consulte
SocketProperties.persistent
). O valor padrão é "false". -
socketId
number
O identificador do soquete.
-
uuid
string opcional
Se o soquete está conectado, contém informações sobre o UUID do serviço a que ele está conectado. Caso contrário, se o soquete está detectando, contém informações sobre o UUID do serviço em que ele está ouvindo.
SocketProperties
Propriedades
-
bufferSize
número opcional
O tamanho do buffer usado para receber dados. O valor padrão é 4.096.
-
name
string opcional
Uma string definida pelo aplicativo associada ao soquete.
-
permanentes
booleano opcional
Sinalização que indica se o soquete foi deixado em aberto quando a página de eventos do aplicativo é descarregada (consulte Gerenciar o ciclo de vida do app). O valor padrão é
false.
. Quando o aplicativo é carregado, todos os soquetes abertos anteriormente com persistent=true podem ser buscados comgetSockets
.
Métodos
close()
chrome.bluetoothSocket.close(
socketId: number,
callback?: function,
)
Desconecta e destrói o soquete. Cada soquete criado deve ser fechado após o uso. O ID do soquete deixa de ser válido assim que a função é chamada. No entanto, há a garantia de que o soquete será fechado somente quando o callback for invocado.
Parâmetros
-
socketId
number
O identificador do soquete.
-
callback
função optional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promise<void>
Chrome 91 ou mais recentePromessas são compatíveis apenas com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
connect()
chrome.bluetoothSocket.connect(
socketId: number,
address: string,
uuid: string,
callback?: function,
)
Conecta a tomada a um dispositivo Bluetooth remoto. Quando a operação connect
for concluída, eventos onReceive
serão gerados quando os dados forem recebidos do peering. Se ocorrer um erro de rede enquanto o ambiente de execução estiver recebendo pacotes, um evento onReceiveError
será gerado. Nesse momento, nenhum evento onReceive
será gerado para esse soquete até que o método setPaused(false)
seja chamado.
Parâmetros
-
socketId
number
O identificador do soquete.
-
endereço
string
O endereço do dispositivo Bluetooth.
-
uuid
string
O UUID do serviço a ser conectado.
-
callback
função optional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promise<void>
Chrome 91 ou mais recentePromessas são compatíveis apenas com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
create()
chrome.bluetoothSocket.create(
properties?: SocketProperties,
callback?: function,
)
Cria um soquete Bluetooth.
Parâmetros
-
properties
SocketProperties opcional
As propriedades do soquete (opcional).
-
callback
função optional
O parâmetro
callback
tem esta aparência:(createInfo: CreateInfo) => void
-
createInfo
O resultado da criação do soquete.
-
Retorna
-
Promise<CreateInfo>
Chrome 91 ou mais recentePromessas são compatíveis apenas com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
disconnect()
chrome.bluetoothSocket.disconnect(
socketId: number,
callback?: function,
)
Desconecta o soquete. O identificador de soquete permanece válido.
Parâmetros
-
socketId
number
O identificador do soquete.
-
callback
função optional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promise<void>
Chrome 91 ou mais recentePromessas são compatíveis apenas com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
getInfo()
chrome.bluetoothSocket.getInfo(
socketId: number,
callback?: function,
)
Recupera o estado do soquete especificado.
Parâmetros
-
socketId
number
O identificador do soquete.
-
callback
função optional
O parâmetro
callback
tem esta aparência:(socketInfo: SocketInfo) => void
-
socketInfo
Objeto contendo as informações do soquete.
-
Retorna
-
Promise<SocketInfo>
Chrome 91 ou mais recentePromessas são compatíveis apenas com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
getSockets()
chrome.bluetoothSocket.getSockets(
callback?: function,
)
Recupera a lista de soquetes abertos no momento pertencentes ao aplicativo.
Parâmetros
-
callback
função optional
O parâmetro
callback
tem esta aparência:(sockets: SocketInfo[]) => void
-
soquetes
-
Retorna
-
Promise<SocketInfo[]>
Chrome 91 ou mais recentePromessas são compatíveis apenas com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
listenUsingL2cap()
chrome.bluetoothSocket.listenUsingL2cap(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
)
Detecte conexões usando o protocolo L2CAP.
Parâmetros
-
socketId
number
O identificador do soquete.
-
uuid
string
UUID de serviço a ser detectado.
-
opções
ListenOptions (opcional)
Opções adicionais opcionais para o serviço.
-
callback
função optional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promise<void>
Chrome 91 ou mais recentePromessas são compatíveis apenas com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
listenUsingRfcomm()
chrome.bluetoothSocket.listenUsingRfcomm(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
)
Detecte conexões usando o protocolo RFCOMM.
Parâmetros
-
socketId
number
O identificador do soquete.
-
uuid
string
UUID de serviço a ser detectado.
-
opções
ListenOptions (opcional)
Opções adicionais opcionais para o serviço.
-
callback
função optional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promise<void>
Chrome 91 ou mais recentePromessas são compatíveis apenas com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
send()
chrome.bluetoothSocket.send(
socketId: number,
data: ArrayBuffer,
callback?: function,
)
Envia dados no soquete Bluetooth em questão.
Parâmetros
-
socketId
number
O identificador do soquete.
-
dados
ArrayBuffer
Os dados a serem enviados.
-
callback
função optional
O parâmetro
callback
tem esta aparência:(bytesSent: number) => void
-
bytesSent
number
O número de bytes enviados.
-
Retorna
-
Prometer<número>
Chrome 91 ou mais recentePromessas são compatíveis apenas com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
setPaused()
chrome.bluetoothSocket.setPaused(
socketId: number,
paused: boolean,
callback?: function,
)
Ativa ou desativa que um soquete conectado receba mensagens de seu par, ou que um soquete de detecção aceite novas conexões. O valor padrão é "false". Pausar um soquete conectado geralmente é usado por um aplicativo para limitar os dados enviados pelo peering. Quando um soquete conectado é pausado, nenhum evento onReceive
é gerado. Quando um soquete é conectado e retomado, os eventos onReceive
são gerados novamente quando as mensagens são recebidas. Quando um soquete de escuta é pausado, novas conexões são aceitas até que o backlog esteja cheio e solicitações de conexão adicionais sejam recusadas. Eventos onAccept
são gerados somente quando o soquete é retomado.
Parâmetros
-
socketId
number
-
pausado
boolean
-
callback
função optional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promise<void>
Chrome 91 ou mais recentePromessas são compatíveis apenas com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
update()
chrome.bluetoothSocket.update(
socketId: number,
properties: SocketProperties,
callback?: function,
)
Atualiza as propriedades do soquete.
Parâmetros
-
socketId
number
O identificador do soquete.
-
properties
Propriedades a serem atualizadas.
-
callback
função optional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promise<void>
Chrome 91 ou mais recentePromessas são compatíveis apenas com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
Eventos
onAccept
chrome.bluetoothSocket.onAccept.addListener(
callback: function,
)
Evento gerado quando uma conexão é estabelecida para um determinado soquete.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(info: AcceptInfo) => void
-
informações
-
onAcceptError
chrome.bluetoothSocket.onAcceptError.addListener(
callback: function,
)
Evento gerado quando ocorre um erro de rede enquanto o tempo de execução aguarda novas conexões no soquete especificado. Quando esse evento é gerado, o soquete é definido como paused
, e nenhum evento onAccept
é gerado para ele.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(info: AcceptErrorInfo) => void
-
informações
-
onReceive
chrome.bluetoothSocket.onReceive.addListener(
callback: function,
)
Evento gerado quando os dados são recebidos em um determinado soquete.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(info: ReceiveInfo) => void
-
informações
-
onReceiveError
chrome.bluetoothSocket.onReceiveError.addListener(
callback: function,
)
Evento gerado quando ocorre um erro de rede enquanto o tempo de execução aguarda os dados no soquete. Quando esse evento é gerado, o soquete é definido como paused
, e nenhum evento onReceive
é gerado para ele.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(info: ReceiveErrorInfo) => void
-
informações
-