iOS выборка данных аптечки, объединяющих несколько устройств - PullRequest
0 голосов
/ 13 февраля 2020

У меня есть приложение, которое собирает данные аптечки из iOS. Он отправляет данные в мое приложение следующим образом:

 {
      "header": {
        "id": "18018B64-850A-4F3A-9D21-4FF0C99762D6",
        "creation_date_time": "2020-01-15T14:15:00.000+01:00",
        "schema_id": {
          "namespace": "omh",
          "name": "step-count",
          "version": "1.0"
        }
      },
      "source": {
        "operating_system_version": "13.3.0",
        "bundle_identifier": "com.garmin.connect.mobile",
        "product_type": "iPhone10,4",
        "name": "Connect",
        "version": "20"
      },
      "device": null,
      "body": {
        "step_count": 888,
        "effective_time_frame": {
          "time_interval": {
            "start_date_time": "2020-01-15T14:15:00.000+01:00",
            "end_date_time": "2020-01-15T14:29:59.000+01:00"
          }
        }
      }
    },

Мне нужны отдельные данные, потому что мое приложение показывает свои собственные агрегаты (день, месяц, сегодня и т. Д. 1014 *), и я хочу сделать это как я sh на стороне сервера, поэтому у меня нет доступа к телефону пользователя. Пользовательский телефон отправляет новые измерения на сервер, поскольку они доступны в фоновом режиме.

Но проблема в том, что я также получаю измерения, полученные от iPhone самого себя или другого устройства, собирающего пошаговые счета.

Я мог бы отфильтровать входящие данные для одного устройства, но это означает, что если мы выключим часы, мы пропустим данные. Healthkit собирает iPhone данных, поэтому в приложении Health вы видите stepcounts.

Я действительно хочу видеть данные, которые есть в приложении Healthkit, поэтому я постоянно обновляюсь.

Короткий вопрос: я не хочу думать об устройстве, я просто хочу, чтобы значение HK изменялось. Это возможно?

1 Ответ

1 голос
/ 15 февраля 2020

Чтобы воспроизвести агрегаты, показанные в Health на iOS, нужно использовать HKStatisticsCollectionQuery вместо загрузки отдельных образцов, а затем пытаться вычислить значения для диаграмм самостоятельно. Маловероятно, что вы сможете воспроизвести логи c, которые HKStatisticsCollectionQuery использует для объединения перекрывающихся данных, поэтому гораздо проще использовать запрос напрямую.

...