我正在尝试通过NPM / Node检查USB调试是打开还是关闭。一旦Android手机连接到我的系统并且USB调试关闭,那么我需要向用户显示提示以在他的手机上启用USB调试。
根据我的研究,连接到我系统的每台设备(扫描仪/电话/ USB)都有一个唯一的GUID,可帮助我区分连接的设备。此外,我无法获取USB调试细节。 请帮忙!
I want this property which is in this link
到目前为止我编写的代码是基于 iSerialNumber ,但我想根据 BUS-TYPE GUID 来区分它。
var usb = require('usb');
usb.on('attach', function(device)
{
var devices = usb.getDeviceList();
var check = devices[0].deviceDescriptor;
if(check.iSerialNumber == '3')
{
console.log("Please enable USB Debugging");
}
else
{
console.log("Connect an Android device");
}
});
以下是我尝试过的最新代码,但它仅适用于三星设备: -
var usbDetect = require('usb-detection');
var Promise = require('bluebird');
var adb = require('adbkit');
var client = adb.createClient();
usbDetect.on('add', function(dev) {
setTimeout(checkAndyDevice, 1500);
});
var checkAndyDevice = function(){
client.listDevices()
.then(function(devices) {
return Promise.map(devices, function() {
return devices;
})
})
.then(function(id) {
if((JSON.stringify(id)) == '[]')
{
console.log("Please enable Usb Debugging option from your Android device");
}
})
.catch(function(err) {
console.error('Something went wrong:', err.stack)
});
};