Açıklama
RFCOMM ve L2CAP bağlantılarını kullanarak Bluetooth cihazlara veri göndermek ve bu cihazlardan veri almak için chrome.bluetoothSocket API'yi kullanın.
Kullanılabilirlik
Manifest
Bu API'yi kullanmak için aşağıdaki anahtarların manifest dosyasında tanımlanması gerekir.
"bluetooth"Türler
AcceptError
Enum
"system_error"
Bir sistem hatası oluştu ve bağlantı kurtarılamayabilir.
"not_listening"
Soket dinlemiyor.
AcceptErrorInfo
Özellikler
-
hata
Sorunun ne olduğunu gösteren bir hata kodu.
-
errorMessage
dize
Hata mesajı.
-
socketId
sayı
Sunucu yuvası tanımlayıcısı.
AcceptInfo
Özellikler
-
clientSocketId
sayı
İstemci yuvası tanımlayıcısı, yani yeni kurulan bağlantının yuva tanımlayıcısı. Bu soket tanımlayıcı yalnızca
chrome.bluetoothSocketad alanındaki işlevlerle kullanılmalıdır. İstemci yuvasının başlangıçta duraklatıldığını ve veri almaya başlamak için uygulama tarafından açıkça devam ettirilmesi gerektiğini unutmayın. -
socketId
sayı
Sunucu yuvası tanımlayıcısı.
CreateInfo
Özellikler
-
socketId
sayı
Yeni oluşturulan soketin kimliği. Bu API'den oluşturulan soket kimliklerinin,
[sockets.tcp](../sockets_tcp/)API gibi diğer API'lerden oluşturulan soket kimlikleriyle uyumlu olmadığını unutmayın.
ListenOptions
Özellikler
-
birikmiş işler
number isteğe bağlı
Soketin dinleme sırasının uzunluğu. Varsayılan değer, işletim sisteminin ana alt sistemine bağlıdır.
-
kanal
number isteğe bağlı
listenUsingRfcommtarafından kullanılan RFCOMM kanalı. Belirtilirse bu kanal daha önce kullanılmamış olmalıdır. Aksi takdirde yöntem çağrısı başarısız olur. Belirtilmediğinde, kullanılmayan bir kanal otomatik olarak ayrılır. -
psm
number isteğe bağlı
listenUsingL2captarafından kullanılan L2CAP PSM. Belirtilmişse bu PSM daha önce kullanılmamış olmalıdır. Aksi takdirde yöntem çağrısı başarısız olur. Belirtilmediğinde, kullanılmayan bir PSM otomatik olarak atanır.
ReceiveError
Enum
"disconnected"
Bağlantı kesildi.
"system_error"
Bir sistem hatası oluştu ve bağlantı kurtarılamayabilir.
"not_connected"
Soket bağlanmadı.
ReceiveErrorInfo
Özellikler
-
hata
Sorunun ne olduğunu gösteren bir hata kodu.
-
errorMessage
dize
Hata mesajı.
-
socketId
sayı
Soket tanımlayıcısı.
ReceiveInfo
Özellikler
-
veri
ArrayBuffer
Alınan veriler (maksimum boyut:
bufferSize). -
socketId
sayı
Soket tanımlayıcısı.
SocketInfo
Özellikler
-
adres
string isteğe bağlı
Temel soket bağlıysa bağlı olduğu cihazın Bluetooth adresini içerir.
-
bufferSize
number isteğe bağlı
Veri almak için kullanılan arabelleğin boyutu. Arabellek boyutu açıkça belirtilmemişse değer sağlanmaz.
-
bağlandı
boole
Soketin uzak bir eşe bağlı olup olmadığını gösteren işaret.
-
ad
string isteğe bağlı
Soketle ilişkili, uygulama tarafından tanımlanan dize.
-
duraklatıldı
boole
Bağlı bir soketin, eşinin daha fazla veri göndermesini engelleyip engellemediğini veya dinleme soketindeki bağlantı isteklerinin
onAcceptetkinliği aracılığıyla gönderilip gönderilmediğini ya da dinleme sırası biriktirme listesinde sıraya alınıp alınmadığını gösteren işaret. Şu sayfaya göz atın:setPaused. Varsayılan değer "false"dur. -
kalıcı
boole
Uygulamanın etkinlik sayfası kaldırıldığında soketin açık kalıp kalmayacağını belirten işaret (bkz.
SocketProperties.persistent). Varsayılan değer "false"tur. -
socketId
sayı
Soket tanımlayıcısı.
-
uuid
string isteğe bağlı
Temel soket bağlıysa bağlı olduğu hizmet UUID'si hakkında bilgi içerir. Temel soket dinliyorsa dinlediği hizmet UUID'si hakkında bilgi içerir.
SocketProperties
Özellikler
-
bufferSize
number isteğe bağlı
Veri almak için kullanılan arabelleğin boyutu. Varsayılan değer 4096'dır.
-
ad
string isteğe bağlı
Soketle ilişkili, uygulama tarafından tanımlanan dize.
-
kalıcı
boole isteğe bağlı
Uygulamanın etkinlik sayfası kaldırıldığında soketin açık bırakılıp bırakılmadığını gösteren işaret (bkz. Uygulama Yaşam Döngüsünü Yönetme). Varsayılan değer
false.'dur. Uygulama yüklendiğinde, daha önce persistent=true ile açılan tüm soketlergetSocketsile getirilebilir.
Yöntemler
close()
chrome.bluetoothSocket.close(
socketId: number,
callback?: function,
): Promise<void>
Soketin bağlantısını keser ve soketi yok eder. Oluşturulan her soket kullanıldıktan sonra kapatılmalıdır. Soket kimliği, işlev çağrılır çağrılmaz geçersiz hale gelir. Ancak soketin yalnızca geri çağırma işlevi çağrıldığında kapatılacağı garanti edilir.
Parametreler
-
socketId
sayı
Soket tanımlayıcısı.
-
callback
function isteğe bağlı
callbackparametresi şu şekilde görünür:() => void
İadeler
-
Promise<void>
Chrome 91 ve sonraki sürümlerPromise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
connect()
chrome.bluetoothSocket.connect(
socketId: number,
address: string,
uuid: string,
callback?: function,
): Promise<void>
Soketi uzak bir Bluetooth cihazına bağlar. connect işlemi başarıyla tamamlandığında, eşten veri alındığında onReceive etkinlikleri tetiklenir. Çalışma zamanı paketleri alırken bir ağ hatası oluşursa onReceiveError etkinliği tetiklenir. Bu noktada, setPaused(false) yöntemi çağrılana kadar bu soket için başka onReceive etkinliği tetiklenmez.
Parametreler
-
socketId
sayı
Soket tanımlayıcısı.
-
adres
dize
Bluetooth cihazının adresi.
-
uuid
dize
Bağlanılacak hizmetin UUID'si.
-
callback
function isteğe bağlı
callbackparametresi şu şekilde görünür:() => void
İadeler
-
Promise<void>
Chrome 91 ve sonraki sürümlerPromise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
create()
chrome.bluetoothSocket.create(
properties?: SocketProperties,
callback?: function,
): Promise<CreateInfo>
Bluetooth soketi oluşturur.
Parametreler
-
mülkler
SocketProperties isteğe bağlı
Soket özellikleri (isteğe bağlı).
-
callback
function isteğe bağlı
callbackparametresi şu şekilde görünür:(createInfo: CreateInfo) => void
-
createInfo
Soket oluşturma işleminin sonucu.
-
İadeler
-
Promise<CreateInfo>
Chrome 91 ve sonraki sürümlerPromise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
disconnect()
chrome.bluetoothSocket.disconnect(
socketId: number,
callback?: function,
): Promise<void>
Soket bağlantısını keser. Soket tanımlayıcısı geçerli kalır.
Parametreler
-
socketId
sayı
Soket tanımlayıcısı.
-
callback
function isteğe bağlı
callbackparametresi şu şekilde görünür:() => void
İadeler
-
Promise<void>
Chrome 91 ve sonraki sürümlerPromise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
getInfo()
chrome.bluetoothSocket.getInfo(
socketId: number,
callback?: function,
): Promise<SocketInfo>
Belirtilen soketin durumunu alır.
Parametreler
-
socketId
sayı
Soket tanımlayıcısı.
-
callback
function isteğe bağlı
callbackparametresi şu şekilde görünür:(socketInfo: SocketInfo) => void
-
socketInfo
Soket bilgilerini içeren nesne.
-
İadeler
-
Promise<SocketInfo>
Chrome 91 ve sonraki sürümlerPromise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
getSockets()
chrome.bluetoothSocket.getSockets(
callback?: function,
): Promise<SocketInfo[]>
Uygulamaya ait olan ve o anda açık olan soketlerin listesini alır.
Parametreler
-
callback
function isteğe bağlı
callbackparametresi şu şekilde görünür:(sockets: SocketInfo[]) => void
-
yuva
Soket bilgilerini içeren nesne dizisi.
-
İadeler
-
Promise<SocketInfo[]>
Chrome 91 ve sonraki sürümlerPromise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
listenUsingL2cap()
chrome.bluetoothSocket.listenUsingL2cap(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
): Promise<void>
L2CAP protokolünü kullanarak bağlantıları dinleme
Parametreler
-
socketId
sayı
Soket tanımlayıcısı.
-
uuid
dize
Dinlenecek hizmet UUID'si.
-
seçenekler
ListenOptions isteğe bağlı
Hizmet için isteğe bağlı ek seçenekler.
-
callback
function isteğe bağlı
callbackparametresi şu şekilde görünür:() => void
İadeler
-
Promise<void>
Chrome 91 ve sonraki sürümlerPromise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
listenUsingRfcomm()
chrome.bluetoothSocket.listenUsingRfcomm(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
): Promise<void>
RFCOMM protokolünü kullanarak bağlantıları dinleme
Parametreler
-
socketId
sayı
Soket tanımlayıcısı.
-
uuid
dize
Dinlenecek hizmet UUID'si.
-
seçenekler
ListenOptions isteğe bağlı
Hizmet için isteğe bağlı ek seçenekler.
-
callback
function isteğe bağlı
callbackparametresi şu şekilde görünür:() => void
İadeler
-
Promise<void>
Chrome 91 ve sonraki sürümlerPromise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
send()
chrome.bluetoothSocket.send(
socketId: number,
data: ArrayBuffer,
callback?: function,
): Promise<number>
Belirtilen Bluetooth soketinde veri gönderir.
Parametreler
-
socketId
sayı
Soket tanımlayıcısı.
-
veri
ArrayBuffer
Gönderilecek veriler.
-
callback
function isteğe bağlı
callbackparametresi şu şekilde görünür:(bytesSent: number) => void
-
bytesSent
sayı
Gönderilen bayt sayısı.
-
İadeler
-
Promise<number>
Chrome 91 ve sonraki sürümlerPromise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
setPaused()
chrome.bluetoothSocket.setPaused(
socketId: number,
paused: boolean,
callback?: function,
): Promise<void>
Bağlı bir soketin eşinden mesaj almasını veya dinleme soketinin yeni bağlantıları kabul etmesini etkinleştirir ya da devre dışı bırakır. Varsayılan değer "false"dur. Bağlı bir soketin duraklatılması, genellikle bir uygulama tarafından eşi tarafından gönderilen verileri kısıtlamak için kullanılır. Bağlı bir soket duraklatıldığında onReceive etkinliği tetiklenmez. Bir soket bağlandığında ve duraklatılmadığında, mesajlar alındığında onReceive etkinlikleri tekrar tetiklenir. Dinleme soketi duraklatıldığında, biriktirme listesi dolana kadar yeni bağlantılar kabul edilir, ardından ek bağlantı istekleri reddedilir. onAccept etkinlikleri yalnızca soket duraklatılmadığında tetiklenir.
Parametreler
-
socketId
sayı
-
duraklatıldı
boole
-
callback
function isteğe bağlı
callbackparametresi şu şekilde görünür:() => void
İadeler
-
Promise<void>
Chrome 91 ve sonraki sürümlerPromise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
update()
chrome.bluetoothSocket.update(
socketId: number,
properties: SocketProperties,
callback?: function,
): Promise<void>
Soket özelliklerini günceller.
Parametreler
-
socketId
sayı
Soket tanımlayıcısı.
-
mülkler
Güncellenecek özellikler.
-
callback
function isteğe bağlı
callbackparametresi şu şekilde görünür:() => void
İadeler
-
Promise<void>
Chrome 91 ve sonraki sürümlerPromise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
Etkinlikler
onAccept
chrome.bluetoothSocket.onAccept.addListener(
callback: function,
)
Belirli bir soket için bağlantı kurulduğunda tetiklenen etkinlik.
Parametreler
-
callback
işlev
callbackparametresi şu şekilde görünür:(info: AcceptInfo) => void
-
bilgi
-
onAcceptError
chrome.bluetoothSocket.onAcceptError.addListener(
callback: function,
)
Çalışma zamanı, belirli bir sokette yeni bağlantılar beklerken ağ hatası oluştuğunda tetiklenen etkinlik. Bu etkinlik tetiklendikten sonra soket paused olarak ayarlanır ve bu soket için başka onAccept etkinliği tetiklenmez.
Parametreler
-
callback
işlev
callbackparametresi şu şekilde görünür:(info: AcceptErrorInfo) => void
-
bilgi
-
onReceive
chrome.bluetoothSocket.onReceive.addListener(
callback: function,
)
Belirli bir soket için veri alındığında tetiklenen etkinlik.
Parametreler
-
callback
işlev
callbackparametresi şu şekilde görünür:(info: ReceiveInfo) => void
-
bilgi
-
onReceiveError
chrome.bluetoothSocket.onReceiveError.addListener(
callback: function,
)
Çalışma zamanı, sokette veri beklerken bir ağ hatası oluştuğunda tetiklenen etkinlik. Bu etkinlik tetiklendikten sonra soket paused olarak ayarlanır ve bu soket için başka onReceive etkinliği tetiklenmez.
Parametreler
-
callback
işlev
callbackparametresi şu şekilde görünür:(info: ReceiveErrorInfo) => void
-
bilgi
-