ConnectIQ:访问内部传感器

ConnectIQ: Access of internal sensors

我想开发一个eclipse项目类型"Watch-App"的应用程序。

基本上我有兴趣在没有任何外部传感器的情况下获得温度和速度。我的手表(Fenix 3)应该支持这个。

我做了一个小测试应用。

  • 在模拟器上,只要启用模拟->FIT 数据->模拟数据,我就会得到温度。
  • 在真实手表 (fenix 3) 上,我没有使用相同的代码获得任何温度更新

代码:

//! Constructor
function initialize()
{
    Snsr.setEnabledSensors( [Snsr.SENSOR_TEMPERATURE] );
    Snsr.enableSensorEvents( method(:onSnsr) );
    string_HR = "---temp";
}

function onSnsr(sensor_info)
{
    var HR = sensor_info.temperature;
    var bucket;
    if( sensor_info.temperature != null )
    {
        string_HR = HR.toString().substring(0, 2) + " temp";
        //Add value to graph
        HR_graph.addItem(HR);
    }
    else
    {
        string_HR = "temp";
    }

    Ui.requestUpdate();
}

问:如何访问手表的内部传感器?

遗憾的是,ConnectIQ 不会公开由内置传感器确定的温度。它目前仅适用于 ANT+ 温度传感器(即 Garmin Tempe)。

目前应用无法访问内部传感器。不过,这是一个非常受欢迎的功能,所以希望它能很快被添加到 Toybox 中。开始玩 IMU、温度等会很有趣。