# 内存优化

# 1. 合理使用分包加载

使用分包加载不仅能优化启动耗时,也能够实现页面、组件和逻辑较粗粒度的按需加载,从而降低内存的占用。详情请参考《启动优化-代码包体积优化》

# 2. 使用按需注入用时注入

通过开启「按需注入」和「用时注入」,可以在运行时避免加载未使用到的页面和组件,降低运行时的内存占用。详情请参考《启动优化-代码注入优化》

# 3. 内存分析

如果要更精细的分析小程序逻辑层的内存分布情况,可以使用「真机调试 2.0」提供的「内存调试」能力。

# 4. 处理内存告警

当小程序占用系统资源过高,可能会被系统销毁或被微信客户端主动回收。在 iOS 上,当微信客户端在一定时间间隔内连续收到系统内存告警时,会根据一定的策略,主动销毁小程序,并提示用户「运行内存不足,请重新打开该小程序」。

建议小程序在必要时使用 wx.onMemoryWarning 监听内存告警事件,进行必要的内存清理。例如:释放一些暂时不用的组件或 JS 对象。