Google Fit の API を呼び出しても Google Fit アプリで表示される値と一致しないことがある。同じ値を取得したい場合は次のように com.google.android.gms
を指定した data source を使うと良い。以下はサンプルをそのまま引用している。
https://developers.google.com/fit/scenarios/read-daily-step-total
final DataSource ds = new DataSource.Builder() .setAppPackageName("com.google.android.gms") .setDataType(DataType.TYPE_STEP_COUNT_DELTA) .setType(DataSource.TYPE_DERIVED) .setStreamName("estimated_steps") .build(); final DataReadRequest req = new DataReadRequest.Builder() .aggregate(ds, DataType.AGGREGATE_STEP_COUNT_DELTA) .bucketByTime(1, TimeUnit.DAYS) .setTimeRange(timeBounds[0], timeBounds[1], TimeUnit.MILLISECONDS) .build();
ABC145 F を解いた。 DP 力が足りない。簡単そうで意外と難しい。