Как отфильтровать ручное количество шагов из Health ConnectAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Как отфильтровать ручное количество шагов из Health Connect

Сообщение Anonymous »

Привет, у меня есть функциональность, чтобы получить шаги пользователя в приложении с помощью Health Connect в моем приложении. Однако моя функциональность ломается, потому что пользователи вступают в огромные ручные шаги через Google Fit. Я получаю данные из Health Connect, а Health Connect синхронизируется с Google Fit, поэтому предпринимаются огромные шаги, которые невозможно пройти через день. < /P>
suspend fun getTodayTotalSteps(healthConnectClient: HealthConnectClient): Long {
Timber.d("counting_to")
val now = LocalDateTime.now().with(LocalTime.MAX)
val startOfDay = now.toLocalDate().atStartOfDay()
var totalSteps = 0L
try {
Timber.d("start_time:::$startOfDay")
Timber.d("end_time:::$now")
val response =
healthConnectClient.readRecords(
ReadRecordsRequest(
StepsRecord::class,
timeRangeFilter = TimeRangeFilter.between(startOfDay, now)
)
)

for (record in response.records) {

if (record.metadata.recordingMethod == RECORDING_METHOD_AUTOMATICALLY_RECORDED) {
totalSteps += record.count
}
Timber.d("total_steps_after_Wallet_creation:::$totalSteps")
}
return totalSteps

} catch (e: Exception) {
// Run error handling here
Timber.d("error in getting steps today $e")
}

return totalSteps
}
< /code>
теперь ecord.metadata.recordingmethod == recording_method_automaty_recorded Метод записи всегда неизвестно, т.е. 0 < /p>
Я вступил в 2500 шагов в качестве ручных шагов, здесь следуют ответ : < /p>
StepsRecord(startTime=2025-02-04T10:24:12.681Z, startZoneOffset=null, endTime=2025-02-04T10:54:12.682Z, endZoneOffset=null, count=2500, metadata=Metadata(id='c9196ccf-9fa5-4557-9651-7cdcb953ebeb', dataOrigin=DataOrigin(packageName='com.google.android.apps.fitness'), lastModifiedTime=2025-02-04T10:54:34.455Z, clientRecordId=null, clientRecordVersion=0, device=null, recordingMethod=0))
< /code>
Теперь моя честная запись автоматическая заключается в следующем < /p>
StepsRecord(startTime=2025-02-04T02:13:42.690Z, startZoneOffset=null, endTime=2025-02-04T02:14:42.691Z, endZoneOffset=null, count=20, metadata=Metadata(id='9752d916-b8f3-4c21-9a19-0e9471098346', dataOrigin=DataOrigin(packageName='com.google.android.apps.fitness'), lastModifiedTime=2025-02-04T02:31:05.696Z, clientRecordId=null, clientRecordVersion=0, device=null, recordingMethod=0))
< /code>
Любой эксперт Android dev, пожалуйста, помогите. Заранее спасибо.

Подробнее здесь: https://stackoverflow.com/questions/794 ... th-connect
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»