Последние несколько дней я пытался получить информацию о сне из Google Fit API.
Мне удалось получить данные из API истории и API сеанса за определенный период времени, но список активности, похоже, не содержит никаких данных сна.
Я собираю данные в «Sleep as Android» и пробую «Instant». Но не вижу ничего в возвращаемых наборах данных.
Кажется, я помню, что со старым подходящим приложением я видел активность сна, но никаких признаков данных в разделе журнала нового приложения нет.
Можно ли получить данные из истории или данных сеанса?
На данный момент я использую
DataReadRequest readRequest = new DataReadRequest.Builder()
.setTimeRange(startTime, endTime, TimeUnit.MILLISECONDS)
.read(DataType.TYPE_ACTIVITY_SEGMENT)
.build();
Fitness.getHistoryClient(this, GoogleSignIn.getLastSignedInAccount(context))
.readData(readRequest)
.addOnSuccessListener(new OnSuccessListener<DataReadResponse>(){
@Override
public void onSuccess(DataReadResponse dataReadResponse) {
List<DataSet> dataSets = dataReadResponse.getDataSets();
for (DataSet dataSet : dataSets) {
for (DataPoint dp : dataSet.getDataPoints()) {
for (Field field : dp.getDataType().getFields()){
LogUtil.d("google fit Start: " + dateFormat.format(dp.getStartTime(TimeUnit.MILLISECONDS)) + " " + timeFormat.format(dp.getStartTime(TimeUnit.MILLISECONDS)) + " End: " + dateFormat.format(dp.getEndTime(TimeUnit.MILLISECONDS)) + " " + timeFormat.format(dp.getEndTime(TimeUnit.MILLISECONDS)) + " type: " + showDataType(dp.getValue(field)));
}
}
}
}
}
Я не уверен, что мне не хватает, чтобы получить правильные данные. Я вижу ходьбу, все еще бегаю и т. Д., Но просто не сплю!