当类型为STEP_COUNT_DELTA时,无法找到BLE设备

问题描述 投票:0回答:1

我正在使用Google fit API连接Sony Smartband2频段。我现在想做的就是扫描并索取设备。

(关注This Fitness ble guide

当我将数据类型设置为TYPE_HEART_RATE_BPM时,我可以找到并声明我的设备。但是,当我将其设置为TYPE_STEP_COUNT_DELTA或TYPE_STEP_COUNT_CUMULATIVE时,我无法找到该设备。

可能是什么问题?我知道以后我还需要使用Sensors API,但是为了找到设备,我不需要它,对吧?

要构建api客户端:

mApiClient = new GoogleApiClient.Builder(this)
                .addApi(Fitness.BLE_API)
                .addApi(Fitness.SENSORS_API)
                .addScope(new Scope(Scopes.FITNESS_ACTIVITY_READ_WRITE))
                .addScope(new Scope(Scopes.FITNESS_ACTIVITY_READ))
                .addScope(new Scope(Scopes.FITNESS_LOCATION_READ))
                .addConnectionCallbacks(this)
                .addOnConnectionFailedListener(this)
                .build();

要扫描BLE设备:

PendingResult<Status> pendingResult = Fitness.BleApi.startBleScan(
                mApiClient,
                new StartBleScanRequest.Builder()
                .setDataTypes(DataType.TYPE_HEART_RATE_BPM)
                //.setDataTypes(DataType.TYPE_STEP_COUNT_DELTA)
                //.setDataTypes(DataType.TYPE_STEP_COUNT_CUMULATIVE)
               .setBleScanCallback(bleScanCallback)
               .build());

在这里,当我使用任何注释语句时,我没有得到任何结果。

非常感谢任何帮助,谢谢。

android bluetooth-lowenergy sony google-fit
1个回答
0
投票

SmartBand 2不通过Sensors API提供步数。大多数乐队没有。您可以从更大的块(EG~1分钟)中获取历史API的步数,并将其与传感器API中的BPM进行匹配。

我正在测试多个品牌和乐队,大多数都没有提供步骤。 SmartBand 2具有我测试过的任何频段的最高分辨率BPM,包括价格为4倍的频段,因此SmartBand 2是我个人日常使用和测试的选择 - 但我真的希望Sony能够添加实时步骤到SmartBand 2或用它发布新的SmartBand。

© www.soinside.com 2019 - 2024. All rights reserved.