小程序
小游戏
企业微信
微信支付
扫描小程序码分享
- 需求的场景描述(希望解决的问题):问题主要是自己开发的倒计时组件中,当页面正在倒计时,用户有很大几率会切出去看其他内容,然后等待倒计时即将结束的1,2分钟,才返回查看,或者,用户熄灭屏幕等待。此时!当小程序会暂停倒计时,导致用户切换回来,或者解锁屏幕,倒计时不准确。
- 希望提供的能力:真的不好意思,我组织过了一次语言,刚才说的让大家误解了,我其实意思是,想要一个API判断,小程序在前台且刚好熄灭屏幕后再打开。或者提供一个熄灭屏幕的API。
5 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
楼主解决了吗?
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
假设返回的倒计时是2分钟,那么计算出2分钟后的时刻,倒计时计算距离这个时刻还有多久,就可以解决这个问题了: 假设:倒计时120s,当前时刻是2018/12/05 17:11:00,那么2018/12/05 17:13:00,倒计时结束 setInterval(function() { downTime = new Date('2018/12/05 17:13:00').getTime() - new Date().getTime() })
这个现象很正常,每台设备的情况都不一样的,大部分手机为了节省内存和能耗,把程序切到后台之后,是自动暂停了程序的运行的,只保留基本功能,这是手机厂商系统设定的,例如王者荣耀为啥切到后台,一段时间之后再切到前台就说网络中断重新连接就是这个原因。
这种情况建议监听页面隐藏onHide,记录下当前时间戳,监听onShow时重新计算前后记录的时间差,重置定时器。
熄灭屏幕试过了,无法触发onHide
ios有时候的确无法监听,也可以这样,定时器每倒计时1s,你就setData时间戳一次,不管设备什么暂停了,onShow总会触发吧?出发的时候就计算时间差重置定时器
onshow?
是熄灭屏幕,真机模拟时候,无法触发onShow,切换是可以的,已处理掉了。
不可能啊,你什么手机?
xs max。你那儿熄灭屏幕可以触发onShow???
熄灭屏幕后再解锁,能触发onshow吗?
大佬大佬,我手机可以触发onshow的
onShow的时候重新计算下
是熄灭屏幕,真机模拟时候,无法触发onShow
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
楼主解决了吗?
假设返回的倒计时是2分钟,那么计算出2分钟后的时刻,倒计时计算距离这个时刻还有多久,就可以解决这个问题了: 假设:倒计时120s,当前时刻是2018/12/05 17:11:00,那么2018/12/05 17:13:00,倒计时结束 setInterval(function() { downTime = new Date('2018/12/05 17:13:00').getTime() - new Date().getTime() })
这个现象很正常,每台设备的情况都不一样的,大部分手机为了节省内存和能耗,把程序切到后台之后,是自动暂停了程序的运行的,只保留基本功能,这是手机厂商系统设定的,例如王者荣耀为啥切到后台,一段时间之后再切到前台就说网络中断重新连接就是这个原因。
这种情况建议监听页面隐藏onHide,记录下当前时间戳,监听onShow时重新计算前后记录的时间差,重置定时器。
熄灭屏幕试过了,无法触发onHide
ios有时候的确无法监听,也可以这样,定时器每倒计时1s,你就setData时间戳一次,不管设备什么暂停了,onShow总会触发吧?出发的时候就计算时间差重置定时器
onshow?
是熄灭屏幕,真机模拟时候,无法触发onShow,切换是可以的,已处理掉了。
不可能啊,你什么手机?
xs max。你那儿熄灭屏幕可以触发onShow???
熄灭屏幕后再解锁,能触发onshow吗?
大佬大佬,我手机可以触发onshow的
onShow的时候重新计算下
是熄灭屏幕,真机模拟时候,无法触发onShow