gpt4 book ai didi

android - 将距离 AGGREGATE_DISTANCE_DELTA 插入 Google 健身

转载 作者:行者123 更新时间:2023-11-30 00:56:40 26 4
gpt4 key购买 nike

我正在尝试从我的应用程序中将距离数据插入 Google-Fit:

insert(DataType.AGGREGATE_DISTANCE_DELTA, distanceMeters, fromMillis, toMillis);

public void insert(DataType type, float value, long fromMillis, long toMillis) {

DataSource dataSource = new DataSource.Builder()
.setType(DataSource.TYPE_RAW)
.setDataType(type)
.setAppPackageName(BuildConfig.APPLICATION_ID)
.build();
DataSet dataSet = DataSet.create(dataSource);

DataPoint point = dataSet.createDataPoint();
point.setTimeInterval(fromMillis, toMillis, TimeUnit.MILLISECONDS);
point.setFloatValues(value);
dataSet.add(point);

Fitness.HistoryApi.insertData(client, dataSet).await(1, TimeUnit.MINUTES);
}

一切顺利 - 已获得授权,status.isSuccess() 返回 true - 但 Google-Fit 应用程序中从未显示距离。

如果我在相同的时间间隔内插入消耗的卡路里,它们将按预期显示:

insert(DataType.AGGREGATE_CALORIES_EXPENDED, kiloCalories, fromMillis, toMillis);

知道为什么 AGGREGATE_DISTANCE_DELTA 不起作用吗?

最佳答案

尝试在插入函数中显式声明 setDataType:

setDataType(DataSource.TYPE_DISTANCE_DELTA)

我认为这类似于 Insert Data guide 中提到的示例:

// Create a data source
DataSource dataSource = new DataSource.Builder()
.setAppPackageName(this)
.setDataType(DataType.TYPE_STEP_COUNT_DELTA)
.setStreamName(TAG + " - step count")
.setType(DataSource.TYPE_RAW)
.build();

// Create a data set
int stepCountDelta = 950;
DataSet dataSet = DataSet.create(dataSource);
// For each data point, specify a start time, end time, and the data value -- in this case,
// the number of new steps.
DataPoint dataPoint = dataSet.createDataPoint()
.setTimeInterval(startTime, endTime, TimeUnit.MILLISECONDS);
dataPoint.getValue(Field.FIELD_STEPS).setInt(stepCountDelta);
dataSet.add(dataPoint);

关于android - 将距离 AGGREGATE_DISTANCE_DELTA 插入 Google 健身,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40049646/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com