一:问题简要描述:

打开设置应用时蓝牙服务出现内存增长,杀掉设置应用时,蓝牙服务内存继续增长。

二:问题详细描述:

【预置条件】:

1.系统初始化正常

2.蓝牙关闭
3.后台无其他应用

【测试步骤】:
1.打开设置应用
2.杀掉设置应用

【预期结果】:
1.蓝牙服务无内存增长
2.蓝牙服务无内存增长

【实际结果】:

1.蓝牙服务内存泄漏
2.蓝牙服务内存泄漏

3、问题分析

1. 蓝牙内存泄漏导致内存占用过多,而蓝牙内存泄漏的原因是因为应用不停的重启导致蓝牙framework一直在调用注册接口向蓝牙服务注册,蓝牙服务注册时(应用启动)以及对应应用死亡时产生内存泄漏

2. 蓝牙注册时的内存泄漏原因:当调用RegisterObserver进行注册时,多个容器用到了observer对应的内存,且因为是成员变量,只要蓝牙服务不重启或者应用没有调用去注册接口,那么observer对应的内存就一直不会释放

3. 应用死亡时的蓝牙服务内存泄漏原因:都是IPC相关的泄漏,和蓝牙代码无关

4. 社区dayu200板子测试,存在同样问题,进入设置应用以及杀掉设置应用也会内存泄漏,且和社区代码一致。

4、日志链接

参考附件htrace文件

相关文件下载
htrace.rar
20.48 MB
下载
Logo

社区规范:仅讨论OpenHarmony相关问题。

更多推荐