Я использую Glide 4.x и получаю FileNotFoundException в качестве URL-адреса, возвращающего 404. Я попытался перехватить исключение, используя RequestListener. Но это не кэширование этого исключения.
GlideApp.with(getApplicationContext()).load(URL).placeholder(R.mipmap.ic_launcher).listener(new RequestListener<Drawable>() {
@Override
public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<Drawable> target, boolean isFirstResource) {
System.out.println("MainActivity.onLoadFailed"+e.getMessage());
return false;
}
@Override
public boolean onResourceReady(Drawable resource, Object model, Target<Drawable> target, DataSource dataSource, boolean isFirstResource) {
System.out.println("MainActivity.onResourceReady");
return false;
}
}).error(R.mipmap.ic_launcher).transform(new CircleCrop()).into(profileImage);
Войти как следует:
2019-03-20 17: 48: 07.134 32233-32233 / com.zyta.zflikz W / Glide: Load
не удалось
https://lh4.googleusercontent.com/-UxjwFuQRjXA/AAAAAAAAAAI/AAAAAAAAAAA/ACLGyWByUX_zz0_9075kpV4xIdPmN_dtNQ/s96-c/photo.jpg
с размером [183x183]
Класс com.bumptech.glide.load.engine.GlideException: не удалось загрузить ресурс
Было 2 причины:
java.io.FileNotFoundException (https://lh4.googleusercontent.com/-UxjwFuQRjXA/AAAAAAAAAAI/AAAAAAAAAAA/ACLGyWByUX_zz0_9075kpV4xIdPmN_dtNQ/s96-c/photo.jpg)
java.io.FileNotFoundException (https://lh4.googleusercontent.com/-UxjwFuQRjXA/AAAAAAAAAAI/AAAAAAAAAAA/ACLGyWByUX_zz0_9075kpV4xIdPmN_dtNQ/s96-c/photo.jpg)
вызовите GlideException # logRootCauses (String) для более подробной информации
Причина (1 из 3): класс com.bumptech.glide.load.engine.GlideException: не удалось получить данные,
класс java.io.InputStream, REMOTE
Была 1 причина:
java.io.FileNotFoundException (https://lh4.googleusercontent.com/-UxjwFuQRjXA/AAAAAAAAAAI/AAAAAAAAAAA/ACLGyWByUX_zz0_9075kpV4xIdPmN_dtNQ/s96-c/photo.jpg)
вызовите GlideException # logRootCauses (String) для более подробной информации
Причина (1 из 1): класс java.io.FileNotFoundException: https://lh4.googleusercontent.com/-UxjwFuQRjXA/AAAAAAAAAAI/AAAAAAAAAAA/ACLGyWByUX_zz0_9075kpV4xIdPmN_dtNQ/s96-c/photo.jpg
Причина (2 из 3): класс com.bumptech.glide.load.engine.GlideException: не удалось получить данные,
класс java.io.InputStream, REMOTE
Была 1 причина:
java.io.FileNotFoundException (https://lh4.googleusercontent.com/-UxjwFuQRjXA/AAAAAAAAAAI/AAAAAAAAAAA/ACLGyWByUX_zz0_9075kpV4xIdPmN_dtNQ/s96-c/photo.jpg)
вызовите GlideException # logRootCauses (String) для более подробной информации
Причина (1 из 1): класс java.io.FileNotFoundException: https://lh4.googleusercontent.com/-UxjwFuQRjXA/AAAAAAAAAAI/AAAAAAAAAAA/ACLGyWByUX_zz0_9075kpV4xIdPmN_dtNQ/s96-c/photo.jpg
Причина (3 из 3): класс com.bumptech.glide.load.engine.GlideException: Failed
LoadPath {StringUri-> Object-> Drawable}, LOCAL
Причина (1 из 2): класс com.bumptech.glide.load.engine.GlideException: Failed
DECODEPATH {StringUri-> Drawable-> Drawable}
Причина (2 из 2): класс com.bumptech.glide.load.engine.GlideException: Failed
DecodePath {StringUri-> Bitmap-> Drawable} 2019-03-20 17: 48: 07.135
32233-32233 / com.zyta.zflikz I / Glide: первопричина (1 из 2)
java.io.FileNotFoundException: https://lh4.googleusercontent.com/-UxjwFuQRjXA/AAAAAAAAAAI/AAAAAAAAAAA/ACLGyWByUX_zz0_9075kpV4xIdPmN_dtNQ/s96-c/photo.jpg
на com.android.okhttp.internal.huc.HttpURLConnectionImpl.getInputStream (HttpURLConnectionImpl.java:251)
на com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getInputStream (DelegatingHttpsURLConnection.java:210)
в com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getInputStream (HttpsURLConnectionImpl.java:26)
на com.bumptech.glide.load.data.HttpUrlFetcher.loadDataWithRedirects (HttpUrlFetcher.java:106)
на com.bumptech.glide.load.data.HttpUrlFetcher.loadData (HttpUrlFetcher.java:59)
на com.bumptech.glide.load.engine.SourceGenerator.startNext (SourceGenerator.java:62)
на com.bumptech.glide.load.engine.DecodeJob.runGenerators (DecodeJob.java:302)
на com.bumptech.glide.load.engine.DecodeJob.runWrapped (DecodeJob.java:272)
на com.bumptech.glide.load.engine.DecodeJob.run (DecodeJob.java:233)
в java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1167)
в java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:641)
на java.lang.Thread.run (Thread.java:764)
в com.bumptech.glide.load.engine.executor.GlideExecutor $ DefaultThreadFactory $ 1.run (GlideExecutor.java:446)
2019-03-20 17: 48: 07.137 32233-32233 / com.zyta.zflikz I / Glide: Root
причина (2 из 2)
java.io.FileNotFoundException: https://lh4.googleusercontent.com/-UxjwFuQRjXA/AAAAAAAAAAI/AAAAAAAAAAA/ACLGyWByUX_zz0_9075kpV4xIdPmN_dtNQ/s96-c/photo.jpg
на com.android.okhttp.internal.huc.HttpURLConnectionImpl.getInputStream (HttpURLConnectionImpl.java:251)
на com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getInputStream (DelegatingHttpsURLConnection.java:210)
в com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getInputStream (HttpsURLConnectionImpl.java:26)
на com.bumptech.glide.load.data.HttpUrlFetcher.loadDataWithRedirects (HttpUrlFetcher.java:106)
на com.bumptech.glide.load.data.HttpUrlFetcher.loadData (HttpUrlFetcher.java:59)
на com.bumptech.glide.load.engine.SourceGenerator.startNext (SourceGenerator.java:62)
на com.bumptech.glide.load.engine.DecodeJob.runGenerators (DecodeJob.java:302)на com.bumptech.glide.load.engine.DecodeJob.onDataFetcherFailed (DecodeJob.java:397)
на com.bumptech.glide.load.engine.SourceGenerator.onLoadFailed (SourceGenerator.java:119)
на com.bumptech.glide.load.data.HttpUrlFetcher.loadData (HttpUrlFetcher.java:65)
на com.bumptech.glide.load.engine.SourceGenerator.startNext (SourceGenerator.java:62)
на com.bumptech.glide.load.engine.DecodeJob.runGenerators (DecodeJob.java:302)
на com.bumptech.glide.load.engine.DecodeJob.runWrapped (DecodeJob.java:272)
на com.bumptech.glide.load.engine.DecodeJob.run (DecodeJob.java:233)
в java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1167)
в java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:641)
на java.lang.Thread.run (Thread.java:764)
в com.bumptech.glide.load.engine.executor.GlideExecutor $ DefaultThreadFactory $ 1.run (GlideExecutor.java:446)
2019-03-20 17: 48: 07.138 32233-32233 / com.zyta.zflikz I / System.out:
MainActivity.onLoadFailedFailed для загрузки ресурса
Пожалуйста, дайте мне знать, есть ли у кого-нибудь исправление или альтернативное решение для этого.