Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用电子设备检测蓝牙适配器?_Javascript_Node.js_Bluetooth_Electron_Pc - Fatal编程技术网

Javascript 如何使用电子设备检测蓝牙适配器?

Javascript 如何使用电子设备检测蓝牙适配器?,javascript,node.js,bluetooth,electron,pc,Javascript,Node.js,Bluetooth,Electron,Pc,是否可以在Electron中检测PC(Mac或Linux)是否连接了蓝牙适配器?我正在使用“蓝牙串口”库进行蓝牙通信。如果BT适配器未连接到PC,应用程序将继续重新加载 这就是应用程序试图查找设备的方式 var btSerial = new (require('bluetooth-serial-port')).BluetoothSerialPort(); try { btSerial.inquire(); } catch (e) { callback(new Error('so

是否可以在Electron中检测PC(Mac或Linux)是否连接了蓝牙适配器?我正在使用“蓝牙串口”库进行蓝牙通信。如果BT适配器未连接到PC,应用程序将继续重新加载

这就是应用程序试图查找设备的方式

var btSerial = new (require('bluetooth-serial-port')).BluetoothSerialPort();

try {
    btSerial.inquire();
}
catch (e) {
    callback(new Error('something bad happened ' + e));
}
btSerial.on('failure', function(error){console.log(error);});
当计算机未安装任何蓝牙设备时,
蓝牙串行端口将崩溃

据我所知,Electron没有任何蓝牙API。根据您的使用情况,您可以使用蓝牙(或仅检查计算机是否具有蓝牙)。查看工作示例。

当计算机未安装任何蓝牙设备时,
蓝牙串行端口将崩溃

据我所知,Electron没有任何蓝牙API。根据您的使用情况,您可以使用蓝牙(或仅检查计算机是否具有蓝牙)。查看工作示例。

您可以使用inquireSync()避免崩溃

try {
    btSerial.inquireSync();
}
catch (e){
    callback(new Error('something bad happened ' + e));
}
您可以使用inquireSync()来避免崩溃

try {
    btSerial.inquireSync();
}
catch (e){
    callback(new Error('something bad happened ' + e));
}

您的实现是什么样子的?当应用程序重新加载时,您是否在控制台中收到任何错误消息?顺便说一句,您的最后一行不完整,它应该以
console.log(error)}结尾是,错过了。应用程序只是挂起。开发人员工具显示一条消息,表明它们已与主进程断开连接。就这样,好的。您粘贴的代码正在主进程中运行?您是否尝试逐行删除代码以确定挂起应用程序的部分?是的,它在主进程中运行。导致问题的行是btSerial.inquire();当我对其进行注释时,应用程序工作正常。您的实现是什么样子的?当应用程序重新加载时,您在控制台中是否收到任何错误消息?顺便说一句,您的最后一行不完整,它应该以
console.log(error)}结尾是,错过了。应用程序只是挂起。开发人员工具显示一条消息,表明它们已与主进程断开连接。就这样,好的。您粘贴的代码正在主进程中运行?您是否尝试逐行删除代码以确定挂起应用程序的部分?是的,它在主进程中运行。导致问题的行是btSerial.inquire();当我对其进行注释时,应用程序工作正常。