fix: imageload download logic

This commit is contained in:
wangcongtao
2020-01-06 14:59:03 +08:00
parent f93d15f80a
commit 733ce0c55c
20 changed files with 250 additions and 51 deletions

View File

@@ -2,7 +2,9 @@ package com.mogo.service.impl.imageloader.glide;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.drawable.Drawable;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.alibaba.android.arouter.facade.annotation.Route;
@@ -10,7 +12,10 @@ import com.bumptech.glide.load.DataSource;
import com.bumptech.glide.load.engine.GlideException;
import com.bumptech.glide.request.RequestListener;
import com.bumptech.glide.request.RequestOptions;
import com.bumptech.glide.request.target.ImageViewTarget;
import com.bumptech.glide.request.target.SimpleTarget;
import com.bumptech.glide.request.target.Target;
import com.bumptech.glide.request.transition.Transition;
import com.mogo.service.MogoServicePaths;
import com.mogo.service.imageloader.IMogoImageLoaderListener;
import com.mogo.service.imageloader.IMogoImageloader;
@@ -21,6 +26,8 @@ import com.mogo.service.impl.imageloader.glide.transform.GlideRoundBitmapTransfo
import com.mogo.service.impl.imageloader.glide.utils.DiskLruCacheManager;
import com.mogo.utils.glide.GlideApp;
import java.io.File;
/**
* @author congtaowang
* @since 2019-12-23
@@ -142,22 +149,24 @@ public class GlideImageLoader implements IMogoImageloader {
GlideApp.with( context.getApplicationContext() )
.asBitmap()
.load( url )
.listener( new RequestListener< Bitmap >() {
.into( new SimpleTarget< Bitmap >() {
@Override
public boolean onLoadFailed( @Nullable GlideException e, Object model, Target< Bitmap > target, boolean isFirstResource ) {
if ( listener != null ) {
listener.onFailure( e );
}
return false;
}
@Override
public boolean onResourceReady( Bitmap resource, Object model, Target< Bitmap > target, DataSource dataSource, boolean isFirstResource ) {
public void onResourceReady( @NonNull Bitmap resource, @Nullable Transition< ? super Bitmap > transition ) {
if ( listener != null ) {
listener.onCompleted( resource );
}
return false;
}
@Override
public void onLoadStarted( @Nullable Drawable placeholder ) {
super.onLoadStarted( placeholder );
}
@Override
public void onLoadFailed( @Nullable Drawable errorDrawable ) {
if ( listener != null ) {
listener.onFailure( new Exception( "download failed." ) );
}
}
} );
}