2014-11-27 7 views
4

Я создаю приложение, которое может использовать google fit api. Я хочу получить все действия (Движения), доступные в Google. Вот список действий в google fit Reference.Получение списка действий (движений) из google fit api

EDITED

Я знаю способ, как получить деятельности, выполняемые пользователем, но я хочу полный перечень видов деятельности, которые, доступных в Google Fit API (не только деятельности, выполняемой пользователем, необходимость весь список мероприятий), как и список, указанный в приведенной выше ссылке.

+0

И вопрос? – Ifor

+0

Я отредактировал мой вопрос, пожалуйста, проверьте. –

+0

Вам нужен список видов деятельности, которые были загружены всеми подходящими пользователями в сочетании? что хотите быть возможным. Просто ваш уполномоченный пользователь будет действительным запросом, но я не думаю, что это возможно. – Ifor

ответ

2

Действия Google Fit перечислены в классе FitnessActivities.

Вы можете программно получить список всех этих полей с помощью:

FitnessActivities.class.getFields() 
+0

Как можно получить значение Acitvities from Fields? –

1

Была такая же проблема, когда вы начали играть с Google Fit API на Android.

Есть видео с образцами кода, а также более подробная документация API на сайте Google Fit.

Это помогло мне много - https://developers.google.com/fit/android/get-started

Проверьте оба видео, а затем, как сохранить и получить типы данных:

https://developers.google.com/fit/android/data-types

Для того, некоторые данные, доступные установить приложение Google Fit на вашем андроид Телефон. Используйте его некоторое время, а затем у вас будут реальные данные в базе данных Google Fit.

EDIT:

Если я получаю свой отредактированный вопрос правильно, то вам нужно что-то вроде следующего кода. Обратите внимание, что я использую это в своем приложении, в котором перечислены действия, записанные приложением Google Fit Andorid. Я не уверен, что в нем будут перечислены другие действия, например пользовательские типы данных, записанные другими приложениями.

Запрос "" виды спорта (например, STILL, бег, ходьба) от Google Fit:

 DataReadRequest readRequest = new DataReadRequest.Builder() 
      .read(DataType.TYPE_ACTIVITY_SEGMENT) 
      // maybe you want to limit data to specific time range? 
      //.setTimeRange(today.startTime, today.endTime, TimeUnit.MILLISECONDS) 
      .build(); 

Затем разобрать ответ. В процессе анализа будет время активности в наличии:

 Fitness.HistoryApi.readData(mClient, readRequest).setResultCallback(new ResultCallback<DataReadResult>() { 
     @Override 
     public void onResult(DataReadResult dataReadResult) { 
      for (DataSet dataSet : dataReadResult.getDataSets()) { 
       for (DataPoint dataPoint : dataSet.getDataPoints()) { 
        DataType dataType = dataPoint.getDataType(); 
        if (dataType.equals(DataType.TYPE_ACTIVITY_SEGMENT)) { 
         String activity = FitnessActivities.getValue(dataPoint); 

         /* process as needed */ 
         /* the `activitity' string contains values as described here: 
         * https://developer.android.com/reference/com/google/android/gms/fitness/FitnessActivities.html 
         */ 

        } 
       } 
      } 
     } 
    }); 

Как я сказал, что это работает для меня - в моем приложении я перечисляю деятельности (и их тип, то есть ходьба, бег и т.д.). Записанные приложения Google Fit для Android.

+0

Ответьте на обновления ;-) – pelotasplus

+0

Не только зарегистрированные мероприятия. Нам нужны все действия, которые обеспечивают google fit api. –

+0

Можете ли вы привести пример кода, как распознать, с какого типа действия возникают результаты, например RUNNING? Как вы анализируете результаты? –