Tizen访问累积卡路里

时间:2018-01-18 15:40:25

标签: tizen tizen-wearable-sdk watchface

我正试图修饰一张表盘,显示午夜燃烧的累计卡路里数。我找不到这样做的简单解决方案。有几个表面(例如IWD_LCD)已经这样做但我不知道如何。也许这从三星健康中读取数据(在这种情况下,如何做到这一点)?

由于

2 个答案:

答案 0 :(得分:0)

Watch Face Designer工具名为' Gear Watch Designer'。但据我所知,你无法检索从这种设计师工具中燃烧的累积卡路里。您必须使用Tizen-Studio开发Tizen Native(C / C ++)或Web(HTML / CSS / js)表面。

Native Efl Watch Application Guide

Native DALi Watch Application Guide

Web Watch Application Guide

通过使用Tizen原生传感器API,您可以检索计步器数据,例如:步数,燃烧的卡路里等。我没有看到API参考文件中累积的卡路里消耗数据,但您可以添加消耗的卡路里数量'并生成累积数据。一旦你找到了燃烧的卡路里'数据然后您需要UI组件在您的表盘上显示信息。

我与您共享C代码示例以检索卡路里已刻录数据:

#include <sensor.h>
#include<stdbool.h>

bool checkSupport(sensor_type_e type){
     bool support;
     sensor_is_supported(type,&support);
     return support;
}

void sensorEventCallBack(sensor_h sensorHanlder, sensor_event_s *event, void *user_data){

      dlog_print(DLOG_DEBUG, LOG_TAG, "Number of steps: %d", event->values[0]);
      dlog_print(DLOG_DEBUG, LOG_TAG, "Number of walking steps: %d", event->values[1]);
      dlog_print(DLOG_DEBUG, LOG_TAG, "Calories burned: %.2f kcal", event->values[4]);
       /* values[0] to values[7]*/
}

void logPrintSensorData(){

     if(checkSupport(SENSOR_HUMAN_PEDOMETER)){

         sensor_h sensorHanlder;
         sensor_get_default_sensor(SENSOR_HUMAN_PEDOMETER, &sensorHanlder);

         sensor_listener_h sensorListener;
         sensor_create_listener(sensorHanlder,&sensorListener);

         sensor_listener_set_event_cb(sensorListener,1000, sensorEventCallBack, NULL);
         sensor_listener_set_option(sensorListener,SENSOR_OPTION_ALWAYS_ON);
         sensor_listener_start(sensorListener);

          /* Once Task Completed*/
         //sensor_listener_stop(sensorListener);

     }

     else {
         dlog_print(DLOG_ERROR, LOG_TAG, "SENSOR_HUMAN_PEDOMETER Not Supported");
     }
}

在tizen-manifest.xml中添加权限http://tizen.org/privilege/healthinfo

如果您愿意,也可以尝试使用Tizen Web API而不是Tizen Native API。有关详细信息:

Tizen Native Sensor Guide

Tizen Web Sensor Guide

答案 1 :(得分:0)

'Samsung health'应用程序根据其方法/算法从各种传感器和Process Info读取原始数据。

但第三方开发者无法访问Samsung health的应用程序数据。有一个SDK可以做到这一点,但仅适用于三星合作伙伴。

Samsung Health SDK

所以,你必须使用数学和数学来计算你自己的'卡路里'。各种传感器的数据。 (比如'X'小时的睡眠会燃烧'Y'卡路里)