应用场景是这样的:我在我的APP中加入了手势密码功能,也就是,我把逻辑写到了index.html中,每次开启APP时,会自动打开一个新的webview手势密码页面。但是这样做的弊端就是,只能在APP完全退出后再运行时,才会弹出手势密码页面。但是,IOS手机就只有一个HOME按钮,按下这个按钮,APP一般情况下是进驻后台或睡眠的,当点击APP时,回到的是退出前的页面,而且也不是重新加载,所以,根本执行不到弹出新webview的代码!
我想问的就是,IOS平台的APP从后台切换回来的时候,有没有一个事件可以监听?这样无论到哪个页面都可以先弹出手势密码页面?
或者,有没有其他的思路可以做到从后台切换回来的时候能够弹出手势密码webview!
- 发布:2015-03-10 09:10
- 更新:2018-01-23 16:33
- 阅读:3791
IOS平台APP从后台切换回来存不存在事件?
云端笔记 (作者)
这个问题又让我自己解决了!!!哎!!
看到了HTML5+示例程序里面有这样的事件!直接拿来用了!
var backgroundTime = 0;
// 监听从前台切换到后台事件
document.addEventListener("pause",function(){
backgroundTime = Math.round(new Date().getTime()/1000);
}, false );
// 监听从后台切换回前台事件
document.addEventListener("resume",function(){
var nowTime = Math.round(new Date().getTime()/1000);
// 如果程序退出到后台时间超过20秒,则重新要求输入手势密码
if (backgroundTime != 0) {
if (nowTime - backgroundTime > 20) {
if (UserInfo.has_login()) {
if (UserInfo.touch_pwd()) {
// 打开手势密码页面
openPwdPage();
}
}
}
}
}, false );
云端笔记 (作者)
我这个要求就是APP从后台切换回前台的话,需要要求用户先输入手势密码!至于你说的从APP内部打开多个页面,回到APP首页,是不会弹出手势密码的,因为,这个方法是监听从后台切换回来的事件,不是退到首页的事件!
黑不溜秋
这样打开多个页面之后后台切前台会加载多个手势页面吧?
2015-03-12 10:17
未闻丶
赞!
2016-01-23 10:42
木乃森
IOS9测试的时候,前台切换到后台的时候,程序是暂停的,也就是说,pause时记录的时间是失效的。之后后台切换到前台(resume)才会执行。请问这个问题你是咋解决的。多谢
2016-07-28 18:40