添加LeakCanary后编译冲突问题

QuibblerQuibbler 2019-11-05 约 2 分钟 2107 次阅读

LeakCanary导致编译冲突问题

坑点:

在比较旧的项目build.gradle文件中添加LeakCanary依赖准备分析内存泄露,可以sync,但是build的时候直接报错不通过:

Program type already present: android.support.v4.app.TaskStackBuilder$SupportParentable

解决办法就是移除引入库中的额外重复依赖:

//    内存泄露检测工具,debug版才有,release版自动移除。不要更新到最新版本有依赖冲突,这个版本没有
    debugApi('com.squareup.leakcanary:leakcanary-android:1.6.2') {
        exclude group: 'com.android.support'
        exclude module: 'support-v4'
    }
    releaseApi('com.squareup.leakcanary:leakcanary-android-no-op:1.6.2') {
        exclude group: 'com.android.support'
        exclude module: 'support-v4'
    }

或者降低到低版本的,没有这个问题:

debugApi 'com.squareup.leakcanary:leakcanary-android:1.5.4'
releaseApi 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.4'

技巧:

在代码项目路径下,运行命令检查依赖项:

./gradlew app:dependencies

会检测出依赖关系:

相关推荐

Airbnb开源项目
精选开源

Airbnb开源项目

Airbnb Engineering & Data ScienceAirflow Use Apache Airflow (incubating) to author workflows as directed acyclic graphs (DAGs) of tasks12,263Airpal Web UI for PrestoDB2,502Aerosolve A machine learning

2.3k
WilliamChart:轻量美观的 Android 图表库实战
精选开源

WilliamChart:轻量美观的 Android 图表库实战

WilliamChart:轻量美观的 Android 图表库实战数据可视化是运动、健康、金融、统计类 App 的刚需。MPAndroidChart 功能最全但偏重复杂,WilliamChart 走的则是"轻量 + 美观 + Kotlin 原生"路线——v3 用 Kotlin 完全重写,API 极简,一行 chart.animate(dataSet) 就能把数据画成带动画的折线/柱状/环形图,开箱即

175
sherpa解析:开源语音技术全家桶
精选开源

sherpa解析:开源语音技术全家桶

想在手机、树莓派甚至 RISC-V 开发板上离线跑语音识别,五年前还是个需要啃 Kaldi 源码的硬核课题。k2-fsa 组织的 sherpa 把这件事变成了"下载预训练模型、装个包、跑示例"的三步操作。这个以 Apache-2.0 协议开源的项目自我定位是"新一代 Kaldi 的语音转文本框架",它专注端到端模型的推理部署:transducer 与 CTC 两类架构,C++ 与 Python 双…

44

评论 (1)

评论功能已关闭,仅展示历史评论