[英]i want to get my daily step count from google fit
我正在编写一个 android 应用程序,它与 Google Fit API 一起使用来收集每日用户的步数。 我想知道我每天的步数。 这段代码返回了我一整年的步数。
如何获得 Google 每日步数值?
override fun onConnected(bundle: Bundle?) {
val dataSourceRequest = DataSourcesRequest.Builder()
.setDataTypes(DataType.TYPE_STEP_COUNT_CUMULATIVE)
.setDataSourceTypes(DataSource.TYPE_RAW)
.build()
val dataSourcesResultCallback =
ResultCallback<DataSourcesResult> { dataSourcesResult ->
for (dataSource in dataSourcesResult.dataSources) {
if (DataType.TYPE_STEP_COUNT_CUMULATIVE == dataSource.dataType) {
registerFitnessDataListener(
dataSource,
DataType.TYPE_STEP_COUNT_CUMULATIVE
)
}
}
}
Fitness.SensorsApi.findDataSources(
mApiClient,
dataSourceRequest
)
.setResultCallback(dataSourcesResultCallback)
}
private fun registerFitnessDataListener(dataSource: DataSource, dataType: DataType) {
val request = SensorRequest.Builder()
.setDataSource(dataSource)
.setDataType(DataType.TYPE_STEP_COUNT_CUMULATIVE)
.setSamplingRate(1, TimeUnit.SECONDS)
.build()
Fitness.SensorsApi.add(mApiClient, request, this)
.setResultCallback { status ->
if (status.isSuccess) {
Log.d("GoogleFit", "SensorApi successfully added")
}
}
}
override fun onDataPoint(dataPoint: DataPoint) {
for (field in dataPoint.dataType.fields) {
val value = dataPoint.getValue(field)
runOnUiThread(Runnable {
stepCounterTextView.setText("Field1: " + field.name + " Value1: " + value)
})
}
}
我用 DataType.TYPE_STEP_COUNT_DELTA 替换了 DataType.TYPE_STEP_COUNT_CUMULATIVE 但它不起作用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.