重新渲染地图导致小程序内存溢出,崩溃-黑屏白屏(wx:if,页面跳转方法可触发)
- 当前 Bug 的表现(可附上截图) 三星S6 edge,三星S10 来回切换含地图页(redirectTo),尝试多次后,小程序页面白屏或黑屏,一段时间后不会恢复,有可能导致小程序关闭。 小程序奔溃效果如图: [图片] 操作视频如下:0-30s为不含地图页的切换演示,内存不会溢出。30s-1分30s为含地图页的切换演示,多次之后,小程序崩溃。 [视频] - 预期表现 包含地图的页面,或地图,在重新渲染时,内存应该被有效回收。重新渲染的时机包括,切换页面(不管是redirect方法还是navigate方法)或wx:if控制的map组件。 - 复现路径 建议使用安卓手机操作(IOS性能监控,不可见内存) 使用wx:if方法控制地图显示或隐藏,内存在地图显示时显著升高,而用hidden方法显示或隐藏地图,不会有此表现。 通过性能窗口观察,发现内存在地图页切换时,升高并不会被销毁。其他普通页面不会有此情况。 推断:内存在地图重新渲染时,未有效回收,多次渲染地图,会造成内存溢出风险。 - 提供一个最简复现 Demo https://developers.weixin.qq.com/s/V4jTDVmb789C 补充:华为荣耀10青春版复现问题,另外对内存监控数据的准确性表示怀疑。 [图片]