使用uni-app到glide加载底部导航栏返回退出app内存泄漏
使用uni-app到glide加载底部导航栏返回退出app内存泄漏
操作步骤:
- 使用到glide加载底部导航栏,返回退出app内存泄漏
预期结果:
- 不泄露
实际结果:
- 泄漏
bug描述:
- 使用到glide加载底部导航栏,返回退出app内存泄漏。glide升级到4.16.0后,glide这个没泄漏了,其他两个还是泄漏
信息类别 | 信息内容 |
---|---|
产品分类 | uniapp/App |
PC开发环境 | Windows |
PC开发环境版本号 | 10 |
HBuilderX类型 | 正式 |
HBuilderX版本号 | 4.53 |
手机系统 | Android |
手机系统版本号 | Android 14 |
手机厂商 | 小米 |
手机机型 | 小米13 |
页面类型 | vue |
vue版本 | vue3 |
打包方式 | 离线 |
项目创建方式 | HBuilderX |
更多关于使用uni-app到glide加载底部导航栏返回退出app内存泄漏的实战教程也可以访问 https://www.itying.com/category-93-b0.html
7 回复
你可以试下重复开关app 查看下内存是否持续上涨 ,目前我用默认基座测试确实会警告但是并未出现内存持续上涨的情况
更多关于使用uni-app到glide加载底部导航栏返回退出app内存泄漏的实战教程也可以访问 https://www.itying.com/category-93-b0.html
打开app啥也不干,也会持续轻微上涨内存!重复关闭后,内存也相对应上涨,没法确定是由于内存泄漏导致的,还是sdk本身做了某些操作导致的?我用默认基座调试也是这样
测试了一下强制gc,重复关闭打开检测到内存存在持续上涨的情况,图片如下
分别进行了三次关闭打开,gc后内存如下
第一次打开java内存占用15.4,第二次16.1,第三次16.6
回复 zwonb: 嗯目前看泄露点未明确 ,你的截图目前看内存增加不多,后续我们会排查看看
关于uni-app中使用Glide加载底部导航栏导致内存泄漏的问题,这里有几个关键点需要注意:
- Glide内存管理:
- 在页面销毁时务必调用Glide的clear()方法清理资源
- 对于Vue3组件,建议在onUnmounted生命周期中处理
- 常见泄漏场景:
- 未正确释放图片资源
- 全局单例持有Activity/Fragment引用
- 异步加载未取消
- 具体解决方案:
// 在vue3组件中
import { onUnmounted } from 'vue'
import { Image } from '[@ksjc](/user/ksjc)/glide'
onUnmounted(() => {
// 清理Glide资源
Image.clear(yourView)
})