我将leakcanary与2.0-beta-3版本集成,应用程序闪烁

Posted

技术标签:

【中文标题】我将leakcanary与2.0-beta-3版本集成,应用程序闪烁【英文标题】:I integrated leakcanary with version 2.0-beta-3, app flickered out 【发布时间】:2020-01-20 00:21:48 【问题描述】:

错误信息 -

java.lang.RuntimeException: 无法获取提供者 leakcanary.internal.LeakCanaryFileProvider: java.lang.ClassNotFoundException:找不到类 路径上的“leakcanary.internal.LeakCanaryFileProvider”:DexPathList [[zip 文件“/system/framework/org.apache.http.legacy.boot.jar”,压缩文件 "/data/app/com.cango.financetob-lH9-QFZ7DnUT7CUjD0oFVQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.cango.financetob-lH9-QFZ7DnUT7CUjD0oFVQ==/lib/arm, /data/app/com.cango.financetob-lH9-QFZ7DnUT7CUjD0oFVQ==/base.apk!/lib/armeabi-v7a, /system/lib, /vendor/lib]]

我只以文档的形式集成了这个版本。这是完整的代码sn-p。

// debugImplementation 因为 LeakCanary 应该只在调试版本中运行。 debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.0-beta-3'

【问题讨论】:

您好,欢迎来到 SO。请为您的问题提供代码 sn-p。如果可能的话,还有一种可能的方法来重现它。 嘿,这是完整的错误信息。 java.lang.RuntimeException:无法获取提供者leakcanary.internal.LeakCanaryFileProvider:java.lang.ClassNotFoundException:在路径上找不到类“leakcanary.internal.LeakCanaryFileProvider”:DexPathList [[zip文件“/system/framework/org. apache.http.legacy.boot.jar", zip 文件 "/data/app/com.cango.financetob-lH9-QFZ7DnUT7CUjD0oFVQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.cango.financetob -lH9-QFZ7DnUT7CUjD0oFVQ==/lib/arm, /data/app/com.cango.financetob-lH9-QFZ7DnUT7CUjD0oFVQ==/base.apk!/lib/armeabi-v7a, /system/lib, /vendor/lib]] 我只以文档的形式集成了这个版本。这是完整的代码sn-p。 // debugImplementation 因为 LeakCanary 应该只在调试版本中运行。 debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.0-beta-3' 【参考方案1】:

可能您同时使用aspectjx。所以需要添加内容:

android
    ...

aspectjx 
    ...
    exclude 'com.squareup.leakcanary'

app/buid.gradle

然后 clean使缓存无效/重新启动

【讨论】:

【参考方案2】:

当您的应用不支持版本时会发生这种情况。尝试将 LeakCanary 版本 (2.0_beta) 降低到更低版本。理想情况下,这应该可以解决。

-这对我有用。

【讨论】:

以上是关于我将leakcanary与2.0-beta-3版本集成,应用程序闪烁的主要内容,如果未能解决你的问题,请参考以下文章

LeakCanary 原理分析

leakcanary原理分析

leakcanary原理分析

leakcanary原理分析

从Leakcanary 1. *迁移到2. *将LeakTrace转换为StackTrace

全新 LeakCanary 2 ! 完全基于 Kotlin 重构升级 !