Google Fit等待多个结果

问题描述 投票:0回答:1

我正在使用Google Fit历史记录客户端从用户读取多种数据类型:

historyClient.readDailyTotal(TYPE_STEP_COUNT_DELTA)
historyClient.readDailyTotal(TYPE_DISTANCE_DELTA)
historyClient.readDailyTotal(TYPE_CALORIES_EXPENDED)

每个调用都有其自己的成功/失败回调(addOnFailureListeneraddOnSuccessListener)。如何将该呼叫“分组”并等待所有数据可用?应该我使用asynctask还是什么?你有例子吗?

android google-fit
1个回答
0
投票

尝试使用适应性历史记录客户端的readData方法。

此示例可以为您提供帮助:

val startTime = Calendar.getInstance().apply {
        time = Date()
        add(Calendar.DAY_OF_WEEK, -1)
    }.timeInMillis

val endTime = Calendar.getInstance().apply {
        time = Date()
    }.timeInMillis

historyClient.readData(DataReadRequest.Builder()
        .read(DataType.TYPE_STEP_COUNT_DELTA)
        .read(DataType.TYPE_DISTANCE_DELTA)
        .read(DataType.TYPE_CALORIES_EXPENDED)
        .setTimeRange(
            startTime,
            endTime,
            TimeUnit.MILLISECONDS
        )
        .bucketByTime(10, TimeUnit.MINUTES)
        .enableServerQueries()
        .build()
    )
© www.soinside.com 2019 - 2024. All rights reserved.