Nano Hash - криптовалюты, майнинг, программирование

Почему мое носимое устройство не указано как источник данных в Google Fit API?

Я пытаюсь получить доступ к пульсометру часов Samsung Gear Live. Часы сопряжены с трубкой 4.4.4 и работают исправно. Я следую официальному образцу BasicSensorsApi.

Я могу успешно подключиться к сервисам Google Play в следующем объеме:

addScope(new Scope(Scopes.FITNESS_LOCATION_READ_WRITE))
            .addScope(new Scope(Scopes.FITNESS_ACTIVITY_READ_WRITE))
            .addScope(new Scope(Scopes.FITNESS_BODY_READ_WRITE))

Но затем, когда я хочу перечислить все доступные мониторы сердечного ритма, я получаю пустой список из DataSource:

private void findFitnessDataSources() {
    Fitness.SensorsApi.findDataSources(mGoogleApiClient, new DataSourcesRequest.Builder()
            .setDataTypes(
                    DataType.TYPE_HEART_RATE_BPM)// At least one datatype must be specified.
            .setDataSourceTypes(
                    DataSource.TYPE_RAW)// Specify whether data type is raw or derived.
            .build())
            .setResultCallback(new ResultCallback<DataSourcesResult>() {
                @Override
                public void onResult(DataSourcesResult dataSourcesResult) {
                    for (DataSource dataSource : dataSourcesResult.getDataSources()) {
                        if (dataSource.getDataType().equals(DataType.TYPE_HEART_RATE_BPM)
                                && mListener == null) {
                            registerFitnessDataListener(dataSource,
                                    DataType.TYPE_HEART_RATE_BPM);
                        }
                    }
                }
            });

Если я изменю DataType на, например, TYPE_STEP_COUNT_CUMULATIVE или TYPE_LOCATION_SAMPLE, список будет содержать мой телефон, что кажется логичным.

Почему же тогда часы не указаны в списке доступных DataSource?

Обратите внимание: это не дубликат:

  1. Получение пульса от «датчика» Samsung Gear Live
  2. Как получить доступ к датчику сердечного ритма в Android Wearable?

потому что я хочу получить доступ к данным сердцебиения через недавно выпущенный API Google Fit.

Я не думаю, что включение режима отладки на часах необходимо, но я пробовал это. Кроме того, я не думаю, что добавление BODY_SENSORS разрешения необходимо, потому что весь процесс в любом случае управляется Google Fit API, но я пробовал и это тоже, но безуспешно.


  • Привет, пожалуйста, не могли бы вы помочь мне с этой проблемой? У меня тоже есть такие же умные часы, но их не видно из приложения stackoverflow.com/questions/31022431/ 25.06.2015
  • это не работает, даже если я ищу все типы данных. Устройства сопряжены. 25.06.2015
  • Привет, есть программные датчики, которые могут заставить его работать, см. Ссылки на stackoverflow.com/a/31231411/1587329 (вопрос в комментариях выше) 05.07.2015

Ответы:


1

Часы Samsung Gear Live не рекламируются как пульсометр BLE и, следовательно, не предоставляет данные о частоте пульса через обычный Bluetooth Low Energy API или основанный на нем API Google Fit.

08.11.2014
  • Это действительно разочаровывает. Я только что потратил на это устройство более 250 долларов. Спасибо, Ян. 09.11.2014
  • Ни один из датчиков частоты сердечных сокращений, имеющихся в устройствах Android Wear (на сегодняшний день!), Не является действительно непрерывными датчиками, такими как те, которые используются на традиционных нагрудных ремнях для монитора сердечного ритма - они по-прежнему являются лучшим выбором, если вы специально ищете точное, близкое к реальному времени сердце. оценить данные. 09.11.2014
  • @ianhanniballake: Как насчет использования программных датчиков? Должны ли они работать? 05.07.2015
  • @ user1587329 - вы имеете в виду написание приложения, которое использует SDK Samsung Gear Live для извлечения информации на телефон, а затем регистрацию в качестве программного датчика в Google Fit, чтобы вы могли передавать эти данные в Google Fit? Конечно, если предположить, что Gear SDK предоставляет вам такой уровень данных, я не понимаю, почему это не сработает. 05.07.2015
  • В значительной степени, за исключением использования стандартных android.sensors и android.support.wearable.view.WatchViewStub API. См. Идеи по адресу stackoverflow.com/a/31231411/1587329, а относительно часов - по адресу stackoverflow.com/questions/24664217 / 06.07.2015
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..