0

我是一名开发人员,致力于将 Google Fit 与智能可穿戴配套应用程序集成。我正在将步数数据导出到 google fit 应用程序。它大部分时间都可以工作,但随机有时它不起作用。所有每小时数据都已转储到 DataSet类并在 Fitness.getHistoryClient 函数中插入数据集。DataSet 对象有几个小时的步骤,我收到了 200 个 API 响应,但在 Google Fit 应用程序中看不到数据。

有人可以帮助我吗?

这是我的代码,

val dataSource = DataSource.Builder()
    .setAppPackageName(context)
    .setDataType(DataType.TYPE_STEP_COUNT_DELTA)
    .setStreamName(TAG + AppConstants.STEPSCOUNT_FIT.value)
    .setType(DataSource.TYPE_RAW)
    .build()

// Create a data set
var dataSet = DataSet.create(dataSource)

dataSet = fillStepsData(dataSet)


LogHelper.i(TAG, "Inserting the dataset in the History API.")

    val lastSignedInAccount = GoogleSignIn.getLastSignedInAccount(context)
    return if (lastSignedInAccount != null) {
        Fitness.getHistoryClient(context, lastSignedInAccount)
            .insertData(dataSet)
            .addOnCompleteListener { task ->
                if (task.isSuccessful) {
                    // At this point, the data has been inserted and can be read.
                    LogHelper.i(TAG, "Data insert was successful!")
                    readHistoryData()
                } else {
                    LogHelper.e(
                        TAG,
                        "There was a problem inserting the dataset.",
                        task.exception
                    )
                }
            }
    }

fillStepsData(dataSet) - 此函数返回 DataSet。DataSet 包含包含所有每小时数据的 DataPoint。

4

0 回答 0