问题一:这是一个服务者的小程序,需要判断服务者的在线状态让c端用户知晓,目前已知小程序应用生命周期onShow可以判断在线状态,onHide可以判断小程序进入后台,小程序进入后台后五分钟会被清除,如果我在onHide设置定时任务,设置四分钟之后调用后端接口,但是在这四分钟之内小程序被清除,定时器是否还会执行?定时器的接口是否会被调用?
我目前的思路:onShow调用接口告知后端我已上线,onHide调用接口告知进入后台,后端监听,如果五分钟之内我没有再次调用onShow的接口,后端自行修改我的状态为离线。
这个思路基于小程序被清除之后定时任务不会发出请求。而且不知道后端那边会不会很难不好搞(我的后端说可以实现)
问题二:想问一下大家还有没有什么更好一点的办法?谢谢
直接在app.js中执行一个定时方法,每5分钟执行一次定时,更新一下用户的时间,后端根据这个时间判断用户是否在线,超过6分钟就离线,在6分钟内就在线。
小程序进入后台后应该是无法继续调用API(部分官方API,如播放背景音乐和实时定位除外)。