【问题标题】:Tizen wearable sensor data loss in background after wifi is switched off关闭 wifi 后后台 Tizen 可穿戴传感器数据丢失
【发布时间】:2016-11-06 13:42:58
【问题描述】:

我正在为 Tizen Wearable 2.3 开发一个混合应用程序。对于应用程序,加速度计和陀螺仪传感器数据被提取并以 100Hz 的频率写入本机服务应用程序中的文件。

但是,在某些试验中,我发现在关闭 WiFi 几分钟后数据会丢失。例如,如果我记录数据 10 分钟,同时将应用程序保持在后台(显示关闭)并在第五分钟关闭 wifi,该文件仅显示前 5 分钟的数据,其余数据不会写入文件.我怎样才能阻止这种行为?

谢谢。

【问题讨论】:

    标签: wifi sensors tizen


    【解决方案1】:

    最后发现我在CPU上没有得到device_power_request_lock

    device_power_request_lock( POWER_LOCK_CPU, 0);
    

    该函数无限期锁定给定的锁定状态,并且不允许 CPU 进入睡眠状态,这会导致数据丢失。记录会话后解锁 CPU:

    device_power_release_lock(POWER_LOCK_CPU); 
    

    【讨论】:

      【解决方案2】:

      作为对上一个答案的补充,除了设置 CPU 锁定外,还需要添加背景类别类型的“传感器”,以防止 tizen 系统(我在 Gear S3 frontier 上使用 tizen 3.0)杀死应用程序由于高能耗,正如本文Is it possible to keep Tizen application alive non stop 中提到的一个答案。

      转到 tizen-manifest.xml >> 高级 >> 背景类别 >> 添加类别类型“传感器”。

      就我而言,一开始我只设置了 CPU 锁定,传感器确实在后台连续记录数据。但启动应用不到十分钟,tizen系统弹出一个窗口,询问类似'XXX应用程序消耗大量能量,你要关闭它吗'。有趣的是,当屏幕仍然是黑色时,没有振动作为通知。我几乎没有偶然发现这个弹出窗口。如果您选择保持应用程序运行并认为一切都很好,那么您就大错特错了。系统会时不时地做同样的事情(10 分钟左右),如果有一次你没有注意到,你的应用程序就会被杀死。 tizen 文档真的是一团糟,大多数情况下你只能通过反复试验和在线帖子的帮助来找出问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多