Проблема с низкоэнергетическим адаптером Bluetooth для Tizen
Я смог получить доступ к адаптеру Bluetooth по умолчанию, используя var adapter = tizen.bluetooth.getDefaultAdapter();
и до сих пор работает нормально. Но когда я использую var adapter = tizen.bluetooth.getLEAdapter();
для адаптера Bluetooth с низким энергопотреблением я не получаю требуемый объект адаптера Bluetooth, т. е. у них нет таких параметров, как имя, MAC-адрес, как в случае адаптера по умолчанию. И когда я призываю adapter.startScan()
Функция LEAdapter не возвращает никаких результатов. Я предполагаю, что все последние смартфоны также поддерживают адаптер с низким энергопотреблением.
Я включил следующие преобладания в манифест.
<tizen:privilege name="http://tizen.org/privilege/bluetooth.gap"/>
<tizen:privilege name="http://tizen.org/privilege/bluetooth.admin"/>
<tizen:privilege name="http://tizen.org/privilege/bluetooth.spp"/>
<tizen:privilege name="http://tizen.org/privilege/bluetooth.health"/>
Что я здесь не так делаю?
1 ответ
getLEAdapter() Получает адаптер Bluetooth низкой энергии по умолчанию. Вы можете попытаться поймать исключение:
try
{
var adapter = tizen.bluetooth.getLEAdapter();
}
catch (err)
{
console.log(err.name + ": " + err.message);
}
Исключения: WebAPIException, выброшенное из getLEAdapter()
SecurityError, если приложение не имеет привилегии для вызова этого метода.
NotSupportedError, если функция не поддерживается.
UnknownError, если возникает какая-либо другая ошибка.
Чтобы проверить, поддерживается ли этот метод или нет, используйте tizen.systeminfo.getCapability (" http://tizen.org/feature/network.bluetooth.le").
try
{
/* Checks if a device supports bluetooth API */
var bluetooth = tizen.systeminfo.getCapability("http://tizen.org/feature/network.bluetooth.le");
console.log(" Bluetooth = " + bluetooth);
}
catch (error)
{
console.log("Error name: " + error.name + ", message: " + error.message);
}
Ссылки на ресурсы, чтобы увидеть: BluetoothManager:: getLEAdapter