我尝试使用 Google Fit API 获取每日步数。然而,由于 Fitness.getHistoryClient 已被弃用,我不得不寻找另一种方法。在 https://developers.google.com/android/reference/com/google/android/gms/fitness/HistoryClient 上,建议使用 Health Connect。不过,据说智能手机上必须安装 Health Connect 应用程序。由于大多数用户没有安装 Health Connect,我不得不寻找另一种方法。有没有像以前一样简单的方法来获取每日步数?
Fitness.getHistoryClient(this, account)
.readData(readRequest)
.addOnSuccessListener { response ->
val dataSet = response.getDataSet(DataType.TYPE_STEP_COUNT_DELTA)
Log.i(TAG, "Data returned for Data type: " + dataSet.dataType.name)
for (dp in dataSet.dataPoints) {
Log.i(TAG, "Data point:")
Log.i(TAG, "\tType: " + dp.dataType.name)
Log.i(TAG, "\tStart: " + DateFormat.getInstance().format(dp.getStartTime(TimeUnit.MILLISECONDS)))
Log.i(TAG, "\tEnd: " + DateFormat.getInstance().format(dp.getEndTime(TimeUnit.MILLISECONDS)))
for (field in dp.dataType.fields) {
Log.i(TAG, "\tField: " + field.name + " Value: " + dp.getValue(field))
}
}
}
.addOnFailureListener { e ->
Log.e(TAG, "onFailure()", e)
}
据报道该方法不再可用。
Health connect 应用程序将从 Android OS 14 开始成为系统应用程序,他们还通知开发人员将 googlefit api 迁移到 health connect。 这是示例: https://github.com/android/health-samples