环境:Android studio 3.4 Gradle 5.1.1java
最近有人反馈项目gradle升级到3.4报错,现排查问题以下:
引入gradle最新插件:
classpath 'com.android.tools.build:gradle:3.4.0'
android
提示报错:
git
由于以前项目中引入的是基于glide的三方包:jp.wasabeef:glide-transformations:2.0.1
github
transformations只是glide的拓展,用于实现高斯模糊和圆角等效果,现现在已升级到 4.0.1,猜想是还须要引入官方的glide,因而引入官方的glide:web
// 官方 Glide implementation 'com.github.bumptech.glide:glide:4.9.0' annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0' // 高斯模糊和圆角等 implementation 'jp.wasabeef:glide-transformations:4.0.1'
由于glide的升级,后来报了一系列的错误,改正以下:ide
旧版 | glide 4.9.0 |
---|---|
crossFade(500) | transition(DrawableTransitionOptions.withCrossFade(500)) |
transform(new GlideCircleTransform(v.getContext())) | transform(new GlideCircleTransform()) |
bitmapTransform(new BlurTransformation(this, 23, 4)) | transform(new BlurTransformation(50, 8)) |
listener(new RequestListener<String, GlideDrawable>()… | listener(new RequestListener()… |
提示:svg
transforms(new CircleCrop())
asBitmap()
须要设置在 load(url)
以前完整设置:gradle
Glide.with(imageView.getContext()) .asBitmap() // 不显示gif图 .load(imageUrl) .transition(DrawableTransitionOptions.withCrossFade(500)) // 渐变 .placeholder(R.drawable.ic_avatar_default)// 加载中图片 .error(R.drawable.ic_avatar_default) // 加载失败图片 .transform(new CircleCrop()) // 圆形图片 .transform(new RoundedCorners(20)) // 圆角图片 .transform(new BlurTransformation(50, 8)) // 高斯模糊,参数1:模糊度;参数2:图片缩放x倍后再进行模糊 .listener(new RequestListener<Drawable>() { // 加载监听 @Override public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<Drawable> target, boolean isFirstResource) { return false; } @Override public boolean onResourceReady(Drawable resource, Object model, Target<Drawable> target, DataSource dataSource, boolean isFirstResource) { return false; } }).into(imageView);