【关键词】
Onhide、router、后台
【问题背景】
快应用退到后台运行后,隔几秒钟后,会自动打开跳转到某个页面,这种情形应该如何去定位处理?
【问题分析】
退到后台运行,再自动拉起看似很诡异,以为是快应用引擎的bug导致的,实际在快应用开发时也是可以实现的,这里主要就是一个对生命周期的理解,看下各项生命周期的说明
快应用退到后台与第二点相似,同样是会触发onhide,所以我们在这里面去处理逻辑就可以了,拉起快应用到某个页面,可以使用router接口去实现,然后适当的加些延时,这样前面说的问题就可以实现了。
【解决方案】
onHide中调用router.push接口并延时3s跳转当前页面,这样就可以在快应用退到后台运行时,3s后快应用自动转到前台。
代码如下
onHide(options) {
'// Do something initial when hide.'
setTimeout(() => {
router.push({
uri: 'pages/index',
});
}, 3000);
},
如果不想在后台运行时再拉起,相应的就检查这部分代码看下,是否有如上的操作,有的话就注释掉。