You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android混淆压缩报错:如何解决transformClassesWithAndroidGradleClassShrinker任务失败?

解决方案:解决:app:transformClassesWithAndroidGradleClassShrinkerForDebug任务失败问题

问题根源分析

从错误日志能直接定位核心问题:

com/yongchun/library/view/ImagePreviewFragment references unknown class: com/bumptech/glide/BitmapTypeRequest
com/yongchun/library/adapter/ImageFolderAdapter references unknown class: com/bumptech/glide/DrawableRequestBuilder
...

这些BitmapTypeRequest、DrawableRequestBuilder是Glide 3.x版本的专属API,但你的项目引入的是Glide 4.6.1(两个版本API完全不兼容),而你使用的com.yongchun:com.yongchun.imageselector:1.1.0图片选择库依赖的是Glide 3.x,版本冲突导致类找不到,最终触发代码压缩(shrinker)的警告错误。

另外你的依赖列表里存在大量重复依赖(比如multidex、picasso、gson都重复出现),这也会增加依赖冲突的概率,需要一并清理。


具体解决步骤

1. 替换不兼容的图片选择库(推荐方案)

你已经引入了com.github.esafirm.android-image-picker:imagepicker:1.12.0,这个库完美兼容Glide 4.x,完全可以替代旧的com.yongchun:com.yongchun.imageselector:1.1.0。直接移除旧库的依赖:

// 删掉这一行依赖
compile "com.yongchun:com.yongchun.imageselector:1.1.0"

2. 清理重复依赖

把build.gradle里重复的依赖项删掉,比如:

  • 重复的com.android.support:multidex:1.0.1
  • 重复的com.squareup.picasso:picasso:2.5.2
  • 重复的com.google.code.gson:gson:2.6.2
  • 重复的com.github.satyan:sugar:1.4
  • 重复的jp.wasabeef:recyclerview-animators(保留2.2.7或2.2.6其中一个即可)
  • 重复的com.android.support:design:26.1.0

清理后的依赖会更简洁,也能避免潜在的依赖冲突。

3. (临时方案)如果一定要保留旧图片选择库

如果暂时不想替换库,可以在proguard-rules.pro文件中添加规则,让压缩工具忽略这些警告,但不保证运行时不会崩溃:

-dontwarn com.yongchun.library.**
-dontwarn com.bumptech.glide.BitmapTypeRequest
-dontwarn com.bumptech.glide.DrawableRequestBuilder
-dontwarn com.bumptech.glide.DrawableTypeRequest

不过还是强烈建议使用方案1,彻底解决版本兼容问题。

4. 最后执行常规操作

  • 点击Android Studio的Build -> Clean Project
  • 然后执行Build -> Rebuild Project
  • 必要时重启Android Studio(解决缓存残留问题)

内容的提问来源于stack exchange,提问作者Midhilaj

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 09:23:25