标签: pedometer

CMPedometerData中的endDate不正确

我用CMPedometer设计应用程序,有一个奇怪的问题.我有来自我的客户的日志,我看这个CMPedometerData,我认为真的不正确,我不明白为什么会这样

[2017-04-11 20:16:34 +0000] CMPedometerData,startDate 2017-04-11 20:16:32 +0000 endDate 2017-04-11 20:18:41 +0000步3距离2.130000000004657 floorsAscended(null) floorsDescended(null)currentPace(null)currentCadence(null)averageActivePace 0>

正如你可以看到我的客户端(我无法重现这个错误)从方法得到startPedometerUpdatesFromDatepedometerData和endDate 2017-04-11 20:18:41比现在更大2017-04-11 20:16:34(它是startPedometerUpdatesFromDate之后的第一个CMPedometerData从背景返回后启动 - willEnterForeground方法).也许有人已经遇到过类似的问题?

我的代码部分:

- (void)didEnterBackground {
    dispatch_async(dispatch_get_main_queue(), ^{
        [[Pedometer sharedInstance].motionActivityManager stopActivityUpdates];
        [[Pedometer sharedInstance].pedometer stopPedometerUpdates];
    });
}

- (void)willEnterForeground {
     NSDate *nowDate = [NSDate new];

     /* here is request to get historical data from lastDateUpdate (store in database) to now date */
     [[Pedometer sharedInstance] importDataFrom:lastDateUpdate endDate:nowDate completion:^{
          dispatch_async(dispatch_get_main_queue(), ^{
                /* show info */
          });
      }];    

     dispatch_async(dispatch_get_main_queue(), ^{
          [self startUpdatingData:nowDate]; …
Run Code Online (Sandbox Code Playgroud)

objective-c ios pedometer

12
推荐指数
1
解决办法
253
查看次数

计步器(步数计数器)

我正在开发一个计步器Android应用程序来计算所采取的步数,并使用这些步骤计算所覆盖的距离和燃烧的卡路里.我已经按照教程 在Android中创建一个简单的计步器和步数计数器,并且完全像它一样.它检测传感器检测到运动时的步数.

但它有一些问题:

  1. 当我手持设备站在同一个地方,只需移动我的手或给设备一个挺举时,它会检测到更改并增加步数.
  2. 如果我用手中的设备移动得非常慢,它就不会检测到变化.
  3. 如果我跳,那么它会在柜台中添加几个步骤.

我已经从Play商店检查了一些其他应用程序,但他们没有做这种事情.

我已搜索但无法找到适合的解决方案或教程.任何帮助或建议.谢谢

android sensormanager pedometer

8
推荐指数
2
解决办法
2万
查看次数

Flutter:如何永久注册传感器(并且永远不会取消注册?)

TL;DR 如何让 Android 传感器永久运行/活动/注册我的应用程序,即使我关闭它?

目标:
我正在制作一个 Flutter 应用程序,它使用计步器包来计算您的步数, 该包
使用Android 的内置传感器,TYPE_STEP_COUNTER返回自上次启动(iOS)以来所采取的步数。在 Android 上,安装应用程序之前执行的任何步骤均不计算在内。

我是如何实现的:

  • 当应用程序在前台主动运行时,每一步都会导致 amyStepCount加 1。
  • 在所有其他情况下(手机锁定,进入主屏幕,关闭应用程序...),AndroidTYPE_STEP_COUNTER传感器应该仍然在后台运行stepCount,一旦我再次打开我的应用程序,新的和上次保存的stepCount(保存的)之间的差异使用shared_prefs)将被计算并添加到myStepCount.

重要提示:即使在我锁定手机、转到主屏幕或关闭应用程序之后,
传感器TYPE_STEP_COUNTER也必须在后台永久运行/保持注册状态...

观察结果:

  • 在我的三星 Galaxy A02s 上,我的应用程序运行得非常好,正如它所预期的那样(如上所述)。这是因为我在那部手机上还安装了 Google Fit 应用程序,它可以 24/7 跟踪您的步数(因此传感器 TYPE_STEP_COUNTER已永久注册)。
  • 在我的 Samsung Galaxy S7 上,我的应用程序无法按预期运行。 myStepCount当应用程序在前台运行时采取步骤时,该值会增加。但是,一旦我再次打开应用程序,就不会添加关闭myStepCount应用程序时采取的步骤。
    注意:我的这款手机上没有任何其他计步应用程序(例如 Google Fit)。

结论:
我需要找到一种方法从我的 Flutter 应用程序注册TYPE_STEP_COUNTER传感器,并在关闭应用程序后保持其注册状态。

2 尝试过(但不成功)的解决方案:

第一次尝试: …

android-sensors sensormanager flutter pedometer flutter-method-channel

6
推荐指数
1
解决办法
1376
查看次数

CMPedometer SIGABRT崩溃iOS 10?

我有一个我正在iOS 10 Beta 3上测试的应用程序,并且由于某些奇怪的原因,每当我执行这一个方法时,它似乎崩溃在startPedometerUpdatesFromDate下面的行:

if (!_pedometer) {
    _pedometer = [[CMPedometer alloc] init];
}
[_pedometer startPedometerUpdatesFromDate:[NSDate date] withHandler:^(CMPedometerData * _Nullable pedometerData, NSError * _Nullable error) {
Run Code Online (Sandbox Code Playgroud)

我已经确认_pedometer不是nil,因为它在升级之前在iOS 9中有效,所以更奇怪.

控制台中没有任何内容表明代码有任何问题,当它崩溃时只会导致这种情况(即使有异常断点):

libsystem_kernel.dylib`__abort_with_payload:
    0x183a58d94 <+0>:  movz   x16, #0x209
    0x183a58d98 <+4>:  svc    #0x80
->  0x183a58d9c <+8>:  b.lo   0x183a58db4               ; <+32>
    0x183a58da0 <+12>: stp    x29, x30, [sp, #-16]!
    0x183a58da4 <+16>: mov    x29, sp
    0x183a58da8 <+20>: bl     0x183a3d7dc               ; cerror_nocancel
    0x183a58dac <+24>: mov    sp, x29
    0x183a58db0 <+28>: ldp    x29, x30, [sp], …
Run Code Online (Sandbox Code Playgroud)

sigabrt ios pedometer ios10

5
推荐指数
2
解决办法
2696
查看次数

使用 flutter 的带有每日步数计数器的计步器

我正在尝试使用 flutter 构建一个基本的健身应用程序。该应用程序有两个主要功能:

  1. 每日步数计数器
  2. 历史数据图表(每天的步数)

我使用计步器插件从手机传感器检索数据。我的问题是,该插件只能发送自上次重新启动以来的连续步数计数 ,这意味着如果用户几天没有打开我的应用程序,我不知道他每天走了多少步,只有他的总步数做过。我想过让我的应用程序在后台运行,但这会浪费电池

Ps 我阅读了Masky 的Implementing pedometer in flutter文章,但这并没有解决我的问题。

感谢您的任何帮助:)

flutter pedometer google-fit-api

5
推荐指数
1
解决办法
7866
查看次数

如何获取计步器步数数据与 Gear s2 (Tizen 2.3.2) 中的 SHealth 相同?

我知道在网络应用程序的情况下,tizen 计步器可以从“tizen.humanactivitymonitor”获得一天的计步器步数。

但我无法在真正的 Gear s2 设备上的网络应用程序中获取它。

我也尝试使用本机系统传感器 API。但是我在 Tizen Native API 中找不到计步器 API。

如何在 Native 和 Web 端获取步数?

tizen samsung-gear-s2 pedometer

4
推荐指数
1
解决办法
3828
查看次数