如何获取Samsung Gear S3智能手表Web应用程序的蓝牙名称/ ID

时间:2017-10-18 17:53:41

标签: tizen tizen-wearable-sdk

我正在尝试在Gear S3上运行的tizen Web应用程序中获取蓝牙名称/ ID。 在手表上,可以找到这些信息 - 设置 - >连接 - >蓝牙 - >蓝牙装备S3( AAA1 )。

我想以编程方式获取 AAA1 值。是否有任何方法或API可以在tizen Web应用程序中获取值?

1 个答案:

答案 0 :(得分:0)

调用 discoverDevices 功能,您将在 succesCallback 参数上找到BluetoothDevice界面。

BluetoothDevice接口代表具有属性的远程蓝牙设备:

DOMString 名称;

BluetoothAddress 地址;

BluetoothClass deviceClass ;

布尔 isBonded ;

布尔 isTrusted ;

布尔 isConnected ;

BluetoothUUID [] uuids ;

名称是您要查找的媒体资源。 在您的情况下,名称是:'Gear S3(AAA1)'

var adapter = tizen.bluetooth.getDefaultAdapter();

var discoverDevicesSuccessCallback = {
        ondevicefound: function(device) {
            alert('Found device - name: ' + device.name);
        }
    };

adapter.discoverDevices(discoverDevicesSuccessCallback, null);

在config.xml中添加'bluetooth.gap'权限(适用于Tizen 2.3.2及更低版本)或'bluetooth'权限(适用于Tizen 3.0及更高版本):

<tizen:privilege name="http://tizen.org/privilege/bluetooth.gap"/>  // <=2.3.2
<tizen:privilege name="http://tizen.org/privilege/bluetooth"/>     // >=3.0

此外,如果您只需要'AAA1'而不是'Gear S3(AAA1)',可以尝试一点正则表达式并拆分。

var deviceName = "Gear S3 (AAA1)";                  // Gear S3 (AAA1)
var removePrts = deviceName.replace(/[()]/g,'');    // Gear S3 AAA1
var shortName = removePrts.split(' ');              // Gear,S3,AAA1
alert(shortName[2]);                                // AAA1