一、微信小程序的关闭
微信小程序的关闭有些坑,有时候需要在小程序关闭时做一些操作,但 微信小程序官方又没有提供退出的api;手动直接关闭呢,又不触发onHide方法;切换到后台在onHide方法内设置定时器监听自动销毁呢,又不准,有时候一会就执行了,有时候半天了都还在。虽然 navigator组件 提供了关闭方法
使用方法:<navigator open-type=“exit” target=“miniProgram”>关闭小程序</navigator>
当open-type设置为exit时,必须同时设置 target='miniProgram'。注:这个是小程序版本库2.1.0之后才有的功能
虽然官方组件提供了一种关闭小程序的方式,和手动关闭小程序,功能类似,但实际运用中往往和这是有出入的,如:1、部分需求使得我们要自定义 navigator 组件(不使用官方组件),自定义组件无法调用官方navigator组件内方法
2、小程序切换到后台,使其自动销毁情况下,即不会调用该组件方法,也监听不到销毁时机,致使无法进行后续操作
二、微信小程序的启动,以及后台自动销毁时间
小程序的启动,可以分为两种情况,一种是冷启动,一种是热启动。
冷启动:如果用户首次打开,或小程序销毁后被用户再次打开,或用户删除小程序后,重新扫码下载并打开(相当于首次打开),此时小程序需要重新加载启动,即冷启动。
热启动:如果用户已经打开过某小程序,然后在一定时间内再次打开该小程序,此时小程序并未被销毁,只是从后台状态进入前台状态,这个过程就是热启动。
2.1、会导致小程序切换到后台的操作:
1:小程序调用拨打电话接口
2:聊天信息内选择文件(小程序选择文件只能在聊天信息内选择,无法从手机文件系统内选)、相册内选择照片、相机拍照
3:全屏预览图片,文件
4:进入小程序权限设置页面(如需要保存文件等,但没有权限,需要去设置中心设置时)
后台自动销毁时间 备注:
2019年开发时:时间官方文档没有说明,但是经过询问一般指5分钟内。
2020年开发时:时间官方文档没有说明,实测部分安卓手机没有固定时间,内存足够情况下,有时候一天了还在,有时候几分钟就没了,十分随缘。
2021年开发时:实测部分手机(苹果手机12),就算手动关闭了小程序,但没超过默认的5分钟内,再次打开小程序,依然存在数据缓存。
参考文档:https://blog.csdn.net/u013814964/article/details/108416107
标签:总结,销毁,微信,程序,组件,关闭,后台 From: https://www.cnblogs.com/dihong/p/17036437.html