hms-scan-demo
hms-scan-demo copied to clipboard
Default View Mode 模式下的内存泄漏
如图检测到了内存泄漏,也看了下这个问题出现的挺久的,官方还没修复。
这里分享另一种方法解决这个问题思路
1.改造scan-2.6.0.300.aar 重写classes.jar里面的DynamicModuleInitializer,编译后覆盖原文件。
2.在启动扫码功能前执行initializeModule,传ApplicationContext
DynamicModuleInitializer.initializeModule(this.getApplicationContext());
3.新建一个类继承ScanKitActivity 并重写onDestroy将mRemoteHelper置null
4.启动Default View Mode改用成以下方式
这样运行暂时没发现有内存泄漏了。
缺点就是要全部本地引用扫码的sdk,每次升级都要覆盖一下DynamicModuleInitializer.class
最后上传了DynamicModuleInitializer.class 有兴趣的可以尝试一下 classDynamicModuleInitializer.zip
您好,您可以尝试升级最新版本SDK看下是否还有这个问题。 如果升级最新版本SDK后问题依然存在,请提供具体的复现步骤我们这边复现一下。
已经是最新版本2.6.0.300。
1.在app的build.gradle加入你们的扫码套件和内存检测工具leakcanary的依赖
2.按照你们官网的指引配置 (https://developer.huawei.com/consumer/cn/doc/development/HMSCore-Guides/android-default-view-0000001050043961) ,在一个按钮点击事件中调用ScanUtil.startScan,重复扫码几次,就会有内存泄漏的提示。
@cczhr 您好,很抱歉我们还是无法复现这个问题,为了更好的定位此问题,方便发下Default View Mode的demo和leakcanary捕获的日志吗?可以发送至[email protected]邮箱,附上issue链接。
@Xuejiao-Shi
源代码以及日志已上传
源代码以及日志.zip
@cczhr 您好,很抱歉我们还是无法复现这个问题,为了更好的定位此问题,方便发下Default View Mode的demo和leakcanary捕获的日志吗?可以发送至[email protected]邮箱,附上issue链接。
我这边上传上了GitHub 就不发邮件了
感谢您提供本次报障的线索及定位协助,我们已经复现成功,预计在下个版本会修复这个问题,感谢您的支持和理解。
谢谢这位大佬 ❤