설명
chrome.bluetoothSocket
API를 사용하여 RFCOMM 및 L2CAP 연결을 통해 블루투스 기기로 데이터를 전송하고 수신합니다.
매니페스트
유형
AcceptError
열거형
'system_error'
시스템 오류가 발생했으며 연결을 복구할 수 없을 수 있습니다.
'not_listening'
소켓이 수신 대기 중이 아닙니다.
AcceptErrorInfo
속성
-
오류
문제를 나타내는 오류 코드입니다.
-
errorMessage
문자열
오류 메시지.
-
socketId
숫자
서버 소켓 식별자입니다.
AcceptInfo
속성
-
clientSocketId
숫자
클라이언트 소켓 식별자, 즉 새로 설정된 연결의 소켓 식별자입니다. 이 소켓 식별자는
chrome.bluetoothSocket
네임스페이스의 함수와만 사용해야 합니다. 클라이언트 소켓은 처음에 일시중지되며 데이터를 수신하려면 애플리케이션에서 명시적으로 일시중지를 해제해야 합니다. -
socketId
숫자
서버 소켓 식별자입니다.
CreateInfo
속성
-
socketId
숫자
새로 생성된 소켓의 ID입니다. 이 API에서 생성된 소켓 ID는
[
sockets.tcp](../sockets_tcp/)
API와 같은 다른 API에서 생성된 소켓 ID와 호환되지 않습니다.
ListenOptions
속성
-
backlog
번호 선택사항
소켓의 수신 대기열 길이입니다. 기본값은 운영체제의 호스트 하위 시스템에 따라 다릅니다.
-
채널
번호 선택사항
listenUsingRfcomm
에서 사용하는 RFCOMM 채널입니다. 지정된 경우 이 채널은 이전에 사용 중이면 안 됩니다. 그렇지 않으면 메서드 호출이 실패합니다. 지정하지 않으면 사용하지 않는 채널이 자동으로 할당됩니다. -
psm
번호 선택사항
listenUsingL2cap
에서 사용하는 L2CAP PSM입니다. 지정된 경우 이 PSM은 이전에 사용 중이면 안 됩니다. 그렇지 않으면 메서드 호출이 실패합니다. 지정하지 않으면 사용되지 않는 PSM이 자동으로 할당됩니다.
ReceiveError
열거형
'disconnected'
연결이 해제되었습니다.
'system_error'
시스템 오류가 발생했으며 연결을 복구할 수 없을 수 있습니다.
'not_connected'
소켓이 연결되지 않았습니다.
ReceiveErrorInfo
속성
-
오류
문제를 나타내는 오류 코드입니다.
-
errorMessage
문자열
오류 메시지.
-
socketId
숫자
소켓 식별자입니다.
ReceiveInfo
속성
-
데이터
ArrayBuffer
수신된 데이터로, 최대 크기는
bufferSize
입니다. -
socketId
숫자
소켓 식별자입니다.
SocketInfo
속성
-
주소
문자열 선택사항
기본 소켓이 연결된 경우 연결된 기기의 블루투스 주소를 포함합니다.
-
bufferSize
번호 선택사항
데이터를 수신하는 데 사용되는 버퍼의 크기입니다. 버퍼 크기가 명시적으로 지정되지 않은 경우 값이 제공되지 않습니다.
-
연결됨
부울
소켓이 원격 피어에 연결되어 있는지 여부를 나타내는 플래그입니다.
-
이름
문자열 선택사항
소켓과 연결된 애플리케이션 정의 문자열입니다.
-
일시중지됨
부울
연결된 소켓이 피어가 데이터를 더 전송하는 것을 차단하는지 또는 리슨 소켓의 연결 요청이
onAccept
이벤트를 통해 디스패치되는지 아니면 리슨 대기열 백로그에 대기열로 추가되는지를 나타내는 플래그입니다.setPaused
페이지를 참고하세요. 기본값은 'false' 입니다. -
영구
부울
애플리케이션의 이벤트 페이지가 언로드될 때 소켓이 열린 상태로 유지되는지 나타내는 플래그입니다 (
SocketProperties.persistent
참고). 기본값은 'false'입니다. -
socketId
숫자
소켓 식별자입니다.
-
uuid
문자열 선택사항
기본 소켓이 연결된 경우 연결된 서비스 UUID에 관한 정보를 포함하고, 기본 소켓이 수신 대기 중인 경우 수신 대기 중인 서비스 UUID에 관한 정보를 포함합니다.
SocketProperties
속성
-
bufferSize
번호 선택사항
데이터를 수신하는 데 사용되는 버퍼의 크기입니다. 기본값은 4096입니다.
-
이름
문자열 선택사항
소켓과 연결된 애플리케이션 정의 문자열입니다.
-
영구
불리언 선택사항
애플리케이션의 이벤트 페이지가 언로드될 때 소켓이 열린 상태로 유지되는지 여부를 나타내는 플래그입니다 (앱 수명 주기 관리 참고). 기본값은
false.
입니다. 애플리케이션이 로드되면 persistent=true로 이전에 열린 소켓은getSockets
로 가져올 수 있습니다.
메서드
close()
chrome.bluetoothSocket.close(
socketId: number,
callback?: function,
): Promise<void>
소켓을 연결 해제하고 소멸시킵니다. 생성된 각 소켓은 사용 후 닫아야 합니다. 함수가 호출되는 즉시 소켓 ID가 더 이상 유효하지 않습니다. 하지만 소켓은 콜백이 호출될 때만 닫히도록 보장됩니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 91 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
connect()
chrome.bluetoothSocket.connect(
socketId: number,
address: string,
uuid: string,
callback?: function,
): Promise<void>
소켓을 원격 블루투스 기기에 연결합니다. connect
작업이 성공적으로 완료되면 동종 기기에서 데이터를 수신할 때 onReceive
이벤트가 발생합니다. 런타임이 패킷을 수신하는 동안 네트워크 오류가 발생하면 onReceiveError
이벤트가 발생하며, 이 시점부터 setPaused(false)
메서드가 호출될 때까지 이 소켓에 대해 더 이상 onReceive
이벤트가 발생하지 않습니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
주소
문자열
블루투스 기기의 주소입니다.
-
uuid
문자열
연결할 서비스의 UUID입니다.
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 91 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
create()
chrome.bluetoothSocket.create(
properties?: SocketProperties,
callback?: function,
): Promise<CreateInfo>
블루투스 소켓을 만듭니다.
매개변수
-
속성
SocketProperties 선택사항
소켓 속성 (선택사항)입니다.
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.(createInfo: CreateInfo) => void
-
createInfo
소켓 생성 결과입니다.
-
반환 값
-
Promise<CreateInfo>
Chrome 91 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
disconnect()
chrome.bluetoothSocket.disconnect(
socketId: number,
callback?: function,
): Promise<void>
소켓을 연결 해제합니다. 소켓 식별자는 유효한 상태로 유지됩니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 91 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
getInfo()
chrome.bluetoothSocket.getInfo(
socketId: number,
callback?: function,
): Promise<SocketInfo>
지정된 소켓의 상태를 가져옵니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.(socketInfo: SocketInfo) => void
-
socketInfo
소켓 정보가 포함된 객체입니다.
-
반환 값
-
Promise<SocketInfo>
Chrome 91 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
getSockets()
chrome.bluetoothSocket.getSockets(
callback?: function,
): Promise<SocketInfo[]>
애플리케이션이 소유한 현재 열려 있는 소켓 목록을 가져옵니다.
매개변수
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.(sockets: SocketInfo[]) => void
-
소켓
-
반환 값
-
Promise<SocketInfo[]>
Chrome 91 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
listenUsingL2cap()
chrome.bluetoothSocket.listenUsingL2cap(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
): Promise<void>
L2CAP 프로토콜을 사용하여 연결을 수신합니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
uuid
문자열
리슨할 서비스 UUID입니다.
-
옵션
ListenOptions 선택사항
서비스의 선택적 추가 옵션입니다.
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 91 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
listenUsingRfcomm()
chrome.bluetoothSocket.listenUsingRfcomm(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
): Promise<void>
RFCOMM 프로토콜을 사용하여 연결을 수신합니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
uuid
문자열
리슨할 서비스 UUID입니다.
-
옵션
ListenOptions 선택사항
서비스의 선택적 추가 옵션입니다.
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 91 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
send()
chrome.bluetoothSocket.send(
socketId: number,
data: ArrayBuffer,
callback?: function,
): Promise<number>
지정된 블루투스 소켓으로 데이터를 전송합니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
데이터
ArrayBuffer
전송할 데이터입니다.
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.(bytesSent: number) => void
-
bytesSent
숫자
전송된 바이트 수입니다.
-
반환 값
-
Promise<number>
Chrome 91 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
setPaused()
chrome.bluetoothSocket.setPaused(
socketId: number,
paused: boolean,
callback?: function,
): Promise<void>
연결된 소켓이 피어로부터 메시지를 수신하거나 수신 대기 소켓이 새 연결을 수락하도록 사용 설정 또는 사용 중지합니다. 기본값은 'false' 입니다. 연결된 소켓 일시중지는 일반적으로 애플리케이션이 피어에서 전송된 데이터를 제한하는 데 사용됩니다. 연결된 소켓이 일시중지되면 onReceive
이벤트가 발생하지 않습니다. 소켓이 연결되고 일시중지가 해제되면 메시지가 수신될 때 onReceive
이벤트가 다시 발생합니다. 수신 대기 소켓이 일시중지되면 백로그가 가득 찰 때까지 새 연결이 수락되고 추가 연결 요청은 거부됩니다. onAccept
이벤트는 소켓이 일시중지 해제된 경우에만 발생합니다.
매개변수
-
socketId
숫자
-
일시중지됨
부울
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 91 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
update()
chrome.bluetoothSocket.update(
socketId: number,
properties: SocketProperties,
callback?: function,
): Promise<void>
소켓 속성을 업데이트합니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
업데이트할 속성입니다.
-
callback
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 91 이상Promise는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
이벤트
onAccept
chrome.bluetoothSocket.onAccept.addListener(
callback: function,
)
지정된 소켓에 연결이 설정될 때 발생하는 이벤트입니다.
매개변수
-
callback
함수
callback
매개변수는 다음과 같습니다.(info: AcceptInfo) => void
-
정보
-
onAcceptError
chrome.bluetoothSocket.onAcceptError.addListener(
callback: function,
)
런타임이 지정된 소켓에서 새 연결을 기다리는 동안 네트워크 오류가 발생한 경우 발생하는 이벤트입니다. 이 이벤트가 발생하면 소켓이 paused
로 설정되고 이 소켓에 더 이상 onAccept
이벤트가 발생하지 않습니다.
매개변수
-
callback
함수
callback
매개변수는 다음과 같습니다.(info: AcceptErrorInfo) => void
onReceive
chrome.bluetoothSocket.onReceive.addListener(
callback: function,
)
특정 소켓의 데이터를 수신할 때 발생하는 이벤트입니다.
매개변수
-
callback
함수
callback
매개변수는 다음과 같습니다.(info: ReceiveInfo) => void
-
정보
-
onReceiveError
chrome.bluetoothSocket.onReceiveError.addListener(
callback: function,
)
런타임이 소켓에서 데이터를 기다리는 동안 네트워크 오류가 발생할 때 발생하는 이벤트입니다. 이 이벤트가 발생하면 소켓이 paused
로 설정되고 이 소켓에 더 이상 onReceive
이벤트가 발생하지 않습니다.
매개변수
-
callback
함수
callback
매개변수는 다음과 같습니다.(info: ReceiveErrorInfo) => void