angularjs - 使用 ionic 和 ngcordova 计算用户使用的步数

标签 angularjs cordova ionic-framework ngcordova healthkit

我正在尝试做一个应用程序,例如计算用户使用的步数,例如参见 movegoogle fit - fitness Play 商店中提供的应用程序。

在谷歌上冲浪后,我找到了一个使用 pedometer 的教程但我只想使用具有 GPS 检测或传感器的移动设备创建一个应用程序,就像我尝试使用加速进行搜索但我不知道如何使用它请在这部分中提供任何提示。

我的需求只是计算用户点击按钮后使用的步数,点击停止按钮后停止计算步数。

如果有人知道的话,我没有在 ionic 中找到任何插件或博客或示例应用程序帮助我。

最佳答案

当用户开始旅程时获取他们的 GPS 位置。然后每隔一段时间(可能大约 5 到 10 秒)获取他们的新 GPS 位置。将这些位置构建到列表中。 geoJSON http://geojson.org/geojson-spec.html定义了一个良好的数据结构来存储这些。它最终看起来像这样:

 { "type": "FeatureCollection",
"features": [
  { "type": "Feature",
    "geometry": {
      "type": "LineString",
      "coordinates": [
        [102.0, 0.0], [103.0, 1.0], [104.0, 0.0], [105.0, 1.0]
        ]
      }

   ]
 }

有相当多的库可以采用这种格式并将其转换为总距离。我相信 Google Maps Api 就是其中之一。我最喜欢的是 Postgis ( http://postgis.net/ )。如果您设置后端服务来存储工作结果,您可以使用 Postgis 来存储此“LineString”对象 (http://postgis.net/docs/ST_Length.html)。需要确定的一件事是,您在 Postgis 中使用的引用 (SRID) 与您从设备收集的相同。我猜应该是 4326。

一旦你有了一段距离,发现步数是用户步长的函数

#steps = distance / step length.

关于angularjs - 使用 ionic 和 ngcordova 计算用户使用的步数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37001086/

相关文章:

html - AngularJs ui-bootstrap Typeahead 带滚动

javascript - 给定时间与现在相比多久以前

javascript - cordova脚本src采用相对路径而不是绝对路径

javascript - 如何使 html5 文本字段显示数字键盘?

android - 在 Ionic 4 中处理后退按钮的问题

javascript - 使用 IE11 的文本区域和占位符属性的 AngularJS v1.2.5 脚本错误

node.js - 使用 MEAN 堆栈的动态页面标题 - Jade 和 Angular

jQuery Mobile 和 Phonegap

android - 使用 firebase 和 google play service api 时 Ionic 应用程序崩溃

ionic-framework - 如何覆盖 Ionic 3 中的硬件后退按钮操作?