Я пытаюсь получить разные типы данных из клиента истории Google Fit API. К настоящему времени я могу прочитать историю DataType.TYPE_STEP_COUNT_DELTA и DataType.TYPE_DISTANCE_DELTA,
но у меня нет данных о DataType.TYPE_STEP_COUNT_CADENCE, набор данных этого типа никогда не содержит никаких точек данных.
Может ли кто-нибудь помочь мне в этом?
Вот как я это делаю:
Запрос:
Fitness.getHistoryClient(context, account)
.readData(DataReadRequest.Builder()
.read(DataType.TYPE_STEP_COUNT_CADENCE)
.read(DataType.TYPE_STEP_COUNT_DELTA)
.read(DataType.TYPE_DISTANCE_DELTA)
.setTimeRange(
configuration.startTime.timeInMillis,
configuration.endTime.timeInMillis,
TimeUnit.MILLISECONDS
)
.bucketByTime(1, TimeUnit.HOURS)
.enableServerQueries()
.build()
)
.addOnSuccessListener { response ->
liveDataUpdates.value = PedometerSensorData.fromBuckets(response.buckets)
}
Анализ данных:
fun fromBuckets(buckets: List<Bucket>): List<PedometerSensorData> {
...
buckets.forEach { bucket ->
bucket.dataSets.forEach { dataSet ->
if(dataSet.dataType == DataType.TYPE_STEP_COUNT_CADENCE) {
Log.d("TYPE_STEP_COUNT_CADENCE", "STEP COUNT CADENCE IS EMPTY ${dataSet.isEmpty}")
}
...
}
}