【发布时间】:2018-04-25 05:39:17
【问题描述】:
我的 Ionic3 应用程序中有一个计时器。计时器与setInterval 完美运行,但是当我将应用程序关闭到睡眠模式时,计时器停止运行。将我的应用程序再次带到fourground后,计时器继续 - 但他从之前暂停的地方开始。
如果我在后台运行应用程序,如何防止计时器暂停?
我的组件
time: any;
displayTime() {
this.time = moment().hour(0).minute(0).second(this.counter++).format('HH : mm : ss');
}
startTime() {
if(this.runClock == null) {
this.runClock = setInterval(() => {
this.displayTime();
},1000)
}
}
在我的 HTML 中,我调用 {{ time }}。
https://ionicframework.com/docs/native/background-mode/ 之类的插件将无法使用,因为 App Store 将拒绝使用此插件的应用。
还有其他想法吗?
【问题讨论】:
-
这如何解决后台模式的问题?
-
“从暂停的地方开始”是指 moment() 没有返回正确的时间,还是之前的时间出现了短暂的故障?
-
时间不对,是的。示例:我开始计时 -> 我等到 00:02:30 -> 我在后台关闭应用程序 -> 我等待 5 分钟 -> 我从后台启动应用程序 -> 计时器可能返回 00 :02:41 .....
-
然后是 00:02:42 和 00:02:43,对吧?
标签: angular cordova typescript momentjs ionic3