【发布时间】:2016-03-19 21:30:44
【问题描述】:
我一直在阅读有关 Google Fit API,特别是 Sensors API (https://developers.google.com/fit/android/sensors) 的信息,其中说:Sensors API 提供对来自 Android 设备上可用传感器和配套设备,例如可穿戴设备。
此外,在观看 Google 的示例视频时,他们说“它们可能是 Android 设备上可用的传感器或配套设备上可用的传感器。例如,对于步数,Fit 将使用手机或任何连接的可穿戴设备上的步数计数器,以两者为准它认为它是最准确的”。
阅读本文后,我了解到 Fit API 将从可用的最佳传感器中读取数据,但使用他们的示例,在连接可穿戴设备的情况下,我只能获得一个数据源来读取步骤:来自我的 Android 手机的数据源。
我添加代码:
Fitness.SensorsApi.findDataSources(mClient, new DataSourcesRequest.Builder()
// At least one datatype must be specified.
.setDataTypes(DataType.TYPE_STEP_COUNT_DELTA)
// Can specify whether data type is raw or derived.
.setDataSourceTypes(DataSource.TYPE_RAW)
.build())
.setResultCallback(new ResultCallback<DataSourcesResult>() {
@Override
public void onResult(DataSourcesResult dataSourcesResult) {
Log.i(TAG, "Result: " + dataSourcesResult.getStatus().toString());
for (DataSource dataSource : dataSourcesResult.getDataSources()) {
Log.i(TAG, "Data source found: " + dataSource.toString());
Log.i(TAG, "Data Source type: " + dataSource.getDataType().getName());
//Let's register a listener to receive Activity data!
if (dataSource.getDataType().equals(DataType.TYPE_STEP_COUNT_DELTA)
&& mListener == null) {
Log.i(TAG, "Data source for LOCATION_SAMPLE found! Registering.");
registerFitnessDataListener(dataSource,
DataType.TYPE_STEP_COUNT_DELTA);
}
}
}
});
这里我只从我的 Android 设备获取数据源,而不是从我的手机和我的可穿戴设备 (Moto 360 2gen)。
你们有什么线索可以解释为什么我的可穿戴数据源没有出现在结果中吗?
谢谢。
【问题讨论】:
标签: android wear-os google-fit google-fit-sdk