簡體   English   中英

Google Fit API - 如何從歷史客戶端讀取 DataType.TYPE_STEP_COUNT_CADENCE

[英]Google Fit API - How you can read DataType.TYPE_STEP_COUNT_CADENCE from history client

我正在嘗試從 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}")
                }

                ...

            }
    }

Fit 為計算節奏所做的唯一計算是采用DataType.TYPE_STEP_COUNT_DELTA點並將該值除以該點的持續時間。

所以,如果你想要節奏數據,我建議在適當的時間間隔內進行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM