3

我是 Android 蓝牙 LE 和可穿戴设备的新手,并试图开发一个应用程序来获取可穿戴设备的心率。我正在使用 Mi Band 3 并按照 Google 的文档从附近的 BLE 设备(Mi Band 3)获取心率。我无法发现该设备。我使用以下代码作为参考。

callback = new BleScanCallback() {
        @Override
        public void onDeviceFound(BleDevice device) {
        //    ClaimBleDeviceRequest request = new ClaimBleDeviceRequest(mClient,device);

            PendingResult<Status> pendingResult =
                    Fitness.BleApi.claimBleDevice(mClient, device);
        }
        @Override
        public void onScanStopped() {

            // ..
        }
    };

    StartBleScanRequest request = new StartBleScanRequest.Builder()
            .setDataTypes(DataType.TYPE_HEART_RATE_BPM)
            .setBleScanCallback(callback)
            .build();

    PendingResult<Status> pendingResult =
            Fitness.BleApi.startBleScan(mClient, request);
4

1 回答 1

0

您是否尝试过常规的 BLE api? https://developer.android.com/guide/topics/connectivity/bluetooth-le

如果设备不是使用常规 BLE api 发现的,而是由配套设备发现的,那么您可以尝试常规蓝牙 API - 设备可能不支持 LE。

于 2019-03-07T15:47:24.157 回答