首页 > 解决方案 > 即使手机被锁定/睡眠也能保持应用程序工作 - Ionic4

问题描述

App 是一个 ionic4 电容器应用程序,它也使用了少量的 cordova 插件。我有一个与蓝牙设备相关的定时器功能,即使手机进入睡眠状态或处于锁定模式,它也必须保持运行。使用 cordova-background-mode 插件,该应用程序在后台运行,但一旦手机被锁定或处于睡眠状态,计时器就会停止工作。当屏幕恢复时,计时器从它停止的地方继续。

在我的案例中,我不能使用平台暂停和恢复事件,因为只是计算差异并加上时间会为我的用例提供错误的值。

该应用程序与高度调节表一起使用,用户可以使用该应用程序调整高度并跟踪他站立的时间。(当桌子达到一定高度时计时器开始运行)。高度调节表也有按钮来控制它的高度。

用例(为什么我不能使用平台恢复和暂停事件以及时间戳):

  1. 办公桌处于站立位置。计时器开始运行。
  2. 我锁定了我的手机(创建了时间戳)
  3. 我坐了1小时(桌子也有按钮来控制高度,所以当用户使用它来降低高度并且处于坐姿,但手机仍然处于锁定/睡眠状态时,这被称为)
  4. 我回到站立位置 20 分钟
  5. 我解锁手机。(创建第二个时间戳)
  6. 现在它会显示 1:20 分钟的站立时间,即使我只站立了 20 分钟

即使手机被锁定,我还能如何让我的应用程序计时器运行?或者我应该使用 insomnia cordova 插件在计时器运行时让它保持清醒?当用户使用失眠插件手动锁定手机时会发生什么?它会保持清醒吗?

标签: androidioscordova-pluginsionic4capacitor

解决方案


我使用 ble 的 startNotification 方法中的 cordova 后台模式插件中的唤醒方法让它工作。@Paulw11 的建议有帮助!


你好,我也有同样的问题。我不明白 MJ2410 的回答——“使用 ble 的 startNotification 方法中的 cordova 背景模式插件中的唤醒方法让它工作”。你能详细说明一下吗?谢谢


推荐阅读