bumptech / glide

An image loading and caching library for Android focused on smooth scrolling
https://bumptech.github.io/glide/
Other
34.62k stars 6.12k forks source link

Glide trying to load from assets directory instead of internet #2894

Closed weejim76 closed 5 years ago

weejim76 commented 6 years ago

Integration libraries: using Glide version: 4.6.1 using com.github.bumptech.glide:okhttp3-integration:4.6.1

Device/Android Version: Samsung S6 Android version 24

Issue details / Repro steps / Use case background: I am trying to load an image from Internet into ImageView but it seems like Glide is trying to load from assets directory instead of Internet.

  //this is the ApplicationContext
  RequestManager requestManager = Glide.with(this)
                .applyDefaultRequestOptions(RequestOptions.diskCacheStrategyOf(DiskCacheStrategy.NONE))
                .applyDefaultRequestOptions(RequestOptions.placeholderOf(R.drawable.placeholder));
            requestManager
                    .applyDefaultRequestOptions(RequestOptions.skipMemoryCacheOf(true));
        }
        requestManager.load("http://opendata.toronto.ca/transportation/tmc/rescucameraimages/CameraImages/loc8015.jpg")
                .into(image);

Layout XML:

<ImageView
            android:id="@+id/cam_view"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:adjustViewBounds="true"
            android:layout_gravity="center"
            android:gravity="center"
            android:scaleType="fitCenter"
            />

Stack trace / LogCat:

Root cause (1 of 1)
  java.io.FileNotFoundException: No content provider:  http://opendata.toronto.ca/transportation/tmc/rescucameraimages/CameraImages/loc8015.jpg 
      at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1049)
      at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:904)
      at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:831)
      at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:22)
      at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:13)
      at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:44)
      at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)
      at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:299)
      at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:266)
      at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:230)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
      at java.lang.Thread.run(Thread.java:841)
      at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)
weejim76 commented 6 years ago

turns out that the url has a trailing space. I am able to workaround the issue by trimming the space in the url before passing it into .load(String)

That said, perhaps Glide should handle this in a more robust manner.

sjudd commented 6 years ago

This is the error I get, with or without the trailing space:

java.lang.RuntimeException: com.bumptech.glide.load.engine.GlideException: Failed to load resource
There were 2 causes:
java.net.UnknownHostException(Unable to resolve host "opendata.toronto.ca": No address associated with hostname)
java.io.FileNotFoundException(No content provider: http://opendata.toronto.ca/transportation/tmc/rescucameraimages/CameraImages/loc8015.jpg)
call GlideException#logRootCauses(String) for more detail
at com.bumptech.glide.test.ConcurrencyHelper$1.await(ConcurrencyHelper.java:46)
at com.bumptech.glide.test.ConcurrencyHelper.wait(ConcurrencyHelper.java:300)
at com.bumptech.glide.test.ConcurrencyHelper.get(ConcurrencyHelper.java:39)
at com.bumptech.glide.LoadUrlTest.loadsUrlWithAppendedString(LoadUrlTest.java:24)
at java.lang.reflect.Method.invoke(Native Method)
at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at com.bumptech.glide.test.TearDownGlide$1.evaluate(TearDownGlide.java:21)
at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:346)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:311)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:76)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:309)
at org.junit.runners.ParentRunner.access$100(ParentRunner.java:63)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:289)
at org.junit.runners.ParentRunner.run(ParentRunner.java:393)
at org.junit.runners.Suite.runChild(Suite.java:128)
at org.junit.runners.Suite.runChild(Suite.java:27)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:311)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:76)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:309)
at org.junit.runners.ParentRunner.access$100(ParentRunner.java:63)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:289)
at org.junit.runners.ParentRunner.run(ParentRunner.java:393)
at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
at android.support.test.internal.runner.TestExecutor.execute(TestExecutor.java:58)
at android.support.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:375)
at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:2074)
Caused by: com.bumptech.glide.load.engine.GlideException: Failed to load resource
There were 2 causes:
java.net.UnknownHostException(Unable to resolve host "opendata.toronto.ca": No address associated with hostname)
java.io.FileNotFoundException(No content provider: http://opendata.toronto.ca/transportation/tmc/rescucameraimages/CameraImages/loc8015.jpg)
call GlideException#logRootCauses(String) for more detail
weejim commented 6 years ago

Are you able to reproduce the issue if you add trailing space to url that works for you?

sjudd commented 6 years ago

I'm not able to reproduce the issue with the given url, even if I add a trailing space. I do see another network error though.

nabrozidhs commented 6 years ago

@sjudd I'm not 100% sure but I got the same issue and I think I know how to reproduced it.

I was today on the starbucks open wifi network and every 30 minutes I'll get the login screen for the wifi network. Since both this issue image url and mine was an http url seems like somehow glide cached the wifi sign in redirect response and treated it as an image?

2801 probably related

Hope it helps!

sjudd commented 6 years ago

@nabrozidhs by the same issue do you mean you get the same error as originally posted here?

It's definitely possible for Glide to end up downloading and trying to decode a web page, but, assuming you're using the default disk cache strategy, this is not the error I'd expect.

stale[bot] commented 6 years ago

This issue has been automatically marked as stale because it has not had activity in the last seven days. It will be closed if no further activity occurs within the next seven days. Thank you for your contributions.

reid112 commented 6 years ago

I am experiencing the exact issue that @weejim76 posted.

GlideApp.with(applicationContext) .load("http://vehicleimg.gasbuddy.io/photos/vehicles/ad84d02d-058e-4864-94fe-a84379f4e8c2.jpg") .skipMemoryCache(true) .diskCacheStrategy(DiskCacheStrategy.NONE) .into(vehiclePhoto)

With a very similar stacktrace:

java.io.FileNotFoundException: No content provider: http://vehicleimg.gasbuddy.io/photos/vehicles/ad84d02d-058e-4864-94fe-a84379f4e8c2.jpg at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1049) at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:904) at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:831) at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:22) at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:13) at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:44) at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62) at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:299) at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:269) at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:230) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) at java.lang.Thread.run(Thread.java:841) at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)

However, I am only experiencing this issue on kitkat devices.

stale[bot] commented 6 years ago

This issue has been automatically marked as stale because it has not had activity in the last seven days. It will be closed if no further activity occurs within the next seven days. Thank you for your contributions.

fabio-filho commented 6 years ago

I'm having the same issue :

Device: Genymotion Emulator Failing on Android API: 25 Tested and working on Android APIs: 21, 22, 23, 24, 26

Gradle: /* Glide */ implementation ("com.github.bumptech.glide:glide:4.6.1") { exclude group: "com.android.support" } implementation "com.android.support:support-fragment:27.1.0" kapt 'com.github.bumptech.glide:compiler:4.6.1'

Adapter:

Glide.with(context)
                .load("http://192.168.0.156:56321/api/values")
                .into(holder.imgProfile)

Logcat:

/Glide: Load failed for http://192.168.0.156:56321/api/values with size [150x180]
                                                            class com.bumptech.glide.load.engine.GlideException: Failed to load resource
                                                            There were 4 causes:
                                                            java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
                                                            java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
                                                            java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
                                                            java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
                                                             call GlideException#logRootCauses(String) for more detail
                                                              Cause (1 of 6): class com.bumptech.glide.load.engine.GlideException: Failed LoadPath{DirectByteBuffer->Object->Drawable}, DATA_DISK_CACHE, http://192.168.0.156:56321/api/values
                                                                Cause (1 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{DirectByteBuffer->GifDrawable->Drawable}
                                                                Cause (2 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{DirectByteBuffer->Bitmap->Drawable}
                                                                Cause (3 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{DirectByteBuffer->BitmapDrawable->Drawable}
                                                              Cause (2 of 6): class com.bumptech.glide.load.engine.GlideException: Failed LoadPath{FileInputStream->Object->Drawable}, DATA_DISK_CACHE, http://192.168.0.156:56321/api/values
                                                                Cause (1 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{FileInputStream->GifDrawable->Drawable}
                                                                Cause (2 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{FileInputStream->Bitmap->Drawable}
                                                                Cause (3 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{FileInputStream->BitmapDrawable->Drawable}
                                                              Cause (3 of 6): class com.bumptech.glide.load.engine.GlideException: Failed LoadPath{ParcelFileDescriptor->Object->Drawable}, DATA_DISK_CACHE, http://192.168.0.156:56321/api/values
                                                            There were 2 causes:
                                                            java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
                                                            java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
                                                             call GlideException#logRootCauses(String) for more detail
                                                                Cause (1 of 2): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{ParcelFileDescriptor->Bitmap->Drawable}
                                                            There was 1 cause:
                                                            java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
                                                             call GlideException#logRootCauses(String) for more detail
                                                                  Cause (1 of 1): class java.io.IOException: java.lang.RuntimeException: setDataSource failed: status = 0x80000000
                                                                Cause (2 of 2): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{ParcelFileDescriptor->BitmapDrawable->Drawable}
                                                            There was 1 cause:
                                                            java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
                                                             call GlideException#logRootCauses(String) for more detail
                                                                  Cause (1 of 1): class java.io.IOException: java.lang.RuntimeException: setDataSource failed: status = 0x80000000
                                                              Cause (4 of 6): class com.bumptech.glide.load.engine.GlideException: Failed LoadPath{DirectByteBuffer->Object->Drawable}, REMOTE, http://192.168.0.156:56321/api/values
                                                                Cause (1 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{DirectByteBuffer->GifDrawable->Drawable}
                                                                Cause (2 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{DirectByteBuffer->Bitmap->Drawable}
                                                                Cause (3 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{DirectByteBuffer->BitmapDrawable->Drawable}
                                                              Cause (5 of 6): class com.bumptech.glide.load.engine.GlideException: Failed LoadPath{FileInputStream->Object->Drawable}, REMOTE, http://192.168.0.156:56321/api/values
                                                                Cause (1 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{FileInputStream->GifDrawable->Drawable}
                                                                Cause (2 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{FileInputStream->Bitmap->Drawable}
03-09 14:02:23.477 2007-2007/br.com.sofis.hemoteid W/Glide:    Cause (3 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{FileInputStream->BitmapDrawable->Drawable}
                                                              Cause (6 of 6): class com.bumptech.glide.load.engine.GlideException: Failed LoadPath{ParcelFileDescriptor->Object->Drawable}, REMOTE, http://192.168.0.156:56321/api/values
                                                            There were 2 causes:
                                                            java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
                                                            java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
                                                             call GlideException#logRootCauses(String) for more detail
                                                                Cause (1 of 2): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{ParcelFileDescriptor->Bitmap->Drawable}
                                                            There was 1 cause:
                                                            java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
                                                             call GlideException#logRootCauses(String) for more detail
                                                                  Cause (1 of 1): class java.io.IOException: java.lang.RuntimeException: setDataSource failed: status = 0x80000000
                                                                Cause (2 of 2): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{ParcelFileDescriptor->BitmapDrawable->Drawable}
                                                            There was 1 cause:
                                                            java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
                                                             call GlideException#logRootCauses(String) for more detail
                                                                  Cause (1 of 1): class java.io.IOException: java.lang.RuntimeException: setDataSource failed: status = 0x80000000
03-09 14:02:23.478 2007-2007/br.com.sofis.hemoteid I/Glide: Root cause (1 of 4)
                                                            java.io.IOException: java.lang.RuntimeException: setDataSource failed: status = 0x80000000
                                                                at com.bumptech.glide.load.resource.bitmap.VideoDecoder.decode(VideoDecoder.java:160)
                                                                at com.bumptech.glide.load.engine.DecodePath.decodeResourceWithList(DecodePath.java:72)
                                                                at com.bumptech.glide.load.engine.DecodePath.decodeResource(DecodePath.java:55)
                                                                at com.bumptech.glide.load.engine.DecodePath.decode(DecodePath.java:45)
                                                                at com.bumptech.glide.load.engine.LoadPath.loadWithExceptionList(LoadPath.java:58)
                                                                at com.bumptech.glide.load.engine.LoadPath.load(LoadPath.java:43)
                                                                at com.bumptech.glide.load.engine.DecodeJob.runLoadPath(DecodeJob.java:498)
                                                                at com.bumptech.glide.load.engine.DecodeJob.decodeFromFetcher(DecodeJob.java:469)
                                                                at com.bumptech.glide.load.engine.DecodeJob.decodeFromData(DecodeJob.java:455)
                                                                at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:407)
                                                                at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:376)
                                                                at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95)
                                                                at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76)
                                                                at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75)
                                                                at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:299)
                                                                at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:415)
                                                                at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:376)
                                                                at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95)
                                                                at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76)
                                                                at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75)
                                                                at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:299)
                                                                at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:415)
                                                                at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:376)
                                                                at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95)
                                                                at com.bumptech.glide.load.model.ByteBufferFileLoader$ByteBufferFetcher.loadData(ByteBufferFileLoader.java:74)
                                                                at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75)
                                                                at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:299)
                                                                at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:266)
                                                                at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:230)
                                                                at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
                                                                at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
                                                                at java.lang.Thread.run(Thread.java:761)
                                                                at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)
                                                             Caused by: java.lang.RuntimeException: setDataSource failed: status = 0x80000000
                                                                at android.media.MediaMetadataRetriever.setDataSource(Native Method)
                                                                at android.media.MediaMetadataRetriever.setDataSource(MediaMetadataRetriever.java:136)
                                                                at com.bumptech.glide.load.resource.bitmap.VideoDecoder$ParcelFileDescriptorInitializer.initialize(VideoDecoder.java:219)
                                                                at com.bumptech.glide.load.resource.bitmap.VideoDecoder$ParcelFileDescriptorInitializer.initialize(VideoDecoder.java:214)
                                                                at com.bumptech.glide.load.resource.bitmap.VideoDecoder.decode(VideoDecoder.java:155)
                                                                at com.bumptech.glide.load.engine.DecodePath.decodeResourceWithList(DecodePath.java:72) 
                                                                at com.bumptech.glide.load.engine.DecodePath.decodeResource(DecodePath.java:55) 
                                                                at com.bumptech.glide.load.engine.DecodePath.decode(DecodePath.java:45) 
                                                                at com.bumptech.glide.load.engine.LoadPath.loadWithExceptionList(LoadPath.java:58) 
                                                                at com.bumptech.glide.load.engine.LoadPath.load(LoadPath.java:43) 
                                                                at com.bumptech.glide.load.engine.DecodeJob.runLoadPath(DecodeJob.java:498) 
                                                                at com.bumptech.glide.load.engine.DecodeJob.decodeFromFetcher(DecodeJob.java:469) 
                                                                at com.bumptech.glide.load.engine.DecodeJob.decodeFromData(DecodeJob.java:455) 
                                                                at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:407) 
                                                                at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:376) 
                                                                at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95) 
                                                                at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76) 
                                                                at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75) 
                                                                at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:299) 
                                                                at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:415) 
                                                                at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:376) 
                                                                at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95) 
                                                                at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76) 
                                                                at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75) 
                                                                at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:299) 
                                                                at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:415) 
                                                                at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:376) 
                                                                at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95) 
                                                                at com.bumptech.glide.load.model.ByteBufferFileLoader$ByteBufferFetcher.loadData(ByteBufferFileLoader.java:74) 
                                                                at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75) 
                                                                at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:299) 
                                                                at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:266) 
                                                                at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:230) 
                                                                at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133) 
                                                                at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607) 
                                                                at java.lang.Thread.run(Thread.java:761) 
                                                                at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446) 
miguoer commented 6 years ago

I got this problems as well. Has it been solved now?

sjudd commented 6 years ago

I don't see "No content provider:" in the stack trace for @fabio-filho, so that may be a different issue. @miguoer can you attach a stack trace if you're able to reproduce?

urgentx commented 6 years ago

Adapter code:

Glide.with(getActivity()).load("https://cdn.hookupdating.mobi/PHEQ5FL0MAFQWR5RT1THEFXHWZY4UXHM.jpg")
                .apply(requestOptions.placeholder(R.drawable.placeholder_f))
                .into(portrait);

Error trace:

04-03 11:45:04.348 12501-12501/com.hookupdating W/Glide: Load failed for "https://cdn.hookupdating.mobi/PHEQ5FL0MAFQWR5RT1THEFXHWZY4UXHM.jpg" with size [1080x1050]
    class com.bumptech.glide.load.engine.GlideException: Failed to load resource
    There was 1 cause:
    java.io.FileNotFoundException(No content provider: "https://cdn.hookupdating.mobi/PHEQ5FL0MAFQWR5RT1THEFXHWZY4UXHM.jpg")
     call GlideException#logRootCauses(String) for more detail
      Cause (1 of 1): class com.bumptech.glide.load.engine.GlideException: Fetching data failed, class android.content.res.AssetFileDescriptor, LOCAL
    There was 1 cause:
    java.io.FileNotFoundException(No content provider: "https://cdn.hookupdating.mobi/PHEQ5FL0MAFQWR5RT1THEFXHWZY4UXHM.jpg")
     call GlideException#logRootCauses(String) for more detail
        Cause (1 of 1): class java.io.FileNotFoundException: No content provider: "https://cdn.hookupdating.mobi/PHEQ5FL0MAFQWR5RT1THEFXHWZY4UXHM.jpg"
04-03 11:45:04.349 12501-12501/com.hookupdating I/Glide: Root cause (1 of 1)
    java.io.FileNotFoundException: No content provider: "https://cdn.hookupdating.mobi/PHEQ5FL0MAFQWR5RT1THEFXHWZY4UXHM.jpg"
        at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1435)
        at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1286)
        at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1209)
        at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:22)
        at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:13)
        at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:44)
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:299)
        at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:269)
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:230)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
        at java.lang.Thread.run(Thread.java:764)
        at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)
iBotasky commented 6 years ago

I got same issue with 4.6.1:

 GlideApp.with(this.mContext)
                .load("https://www.baidu.com/img/superlogo_c4d7df0a003d3db9b65e9ef0fe6da1ec.png")
                .centerCrop()
                .into(helper.getView(R.id.iv_film_img))

And it pop:

2018-04-10 17:09:14.010 8403-8403/com.sirius.cybird I/Glide: Root cause (1 of 1)
    java.io.FileNotFoundException: No content provider: https://www.baidu.com/img/superlogo_c4d7df0a003d3db9b65e9ef0fe6da1ec.png
        at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1163)
        at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1014)
        at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:937)
        at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:22)
        at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:13)
        at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:44)
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:299)
        at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:269)
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:230)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
        at java.lang.Thread.run(Thread.java:761)
        at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)
sjudd commented 6 years ago

Is this reliably reproducible for anyone? Or do you just see this occasionally?

iBotasky commented 6 years ago

@sjudd I try to use 2 real devices(OPPO R11s AndroidVersion 7.1.1 & XiaoMi 5s AndroidVersion 6.0.1) and one virtual device(GoogleNexus7 Android5.0.0) run my app, the two real devices were pop this trace always, and not show the image. And the virtual device work fine.

And I try to use version 3.7.0, it works fine in any devices.

hussainahmad commented 6 years ago

I am also facing the same issue as well in 4.6.1, Is this resolved ?

cutzmf commented 6 years ago

Glide 4.7.1 - same issue



 Root cause (3 of 3)
                                                             java.io.FileNotFoundException: No content provider: https://flickr.com/photos/122091795@N06/26676774137
                                                                 at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1146)
                                                                 at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:997)
                                                                 at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:920)
                                                                 at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:22)
                                                            at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:13)```
skyscrapy commented 6 years ago

Same problem

Load failed for https://78.media.tumblr.com/c7a862f10e42e8a7fa3439cf793283f8/tumblr_p2x7exUGsO1rvoqjeo1_1280.png with size [720x893]
    class com.bumptech.glide.load.engine.GlideException: Failed to load resource
    There was 1 cause:
    java.io.FileNotFoundException(No content provider: https://78.media.tumblr.com/c7a862f10e42e8a7fa3439cf793283f8/tumblr_p2x7exUGsO1rvoqjeo1_1280.png)
     call GlideException#logRootCauses(String) for more detail
      Cause (1 of 1): class com.bumptech.glide.load.engine.GlideException: Fetching data failed, class android.content.res.AssetFileDescriptor, LOCAL, DataCacheKey{sourceKey=https://78.media.tumblr.com/c7a862f10e42e8a7fa3439cf793283f8/tumblr_p2x7exUGsO1rvoqjeo1_1280.png, signature=EmptySignature}
    There was 1 cause:
    java.io.FileNotFoundException(No content provider: https://78.media.tumblr.com/c7a862f10e42e8a7fa3439cf793283f8/tumblr_p2x7exUGsO1rvoqjeo1_1280.png)
     call GlideException#logRootCauses(String) for more detail
        Cause (1 of 1): class java.io.FileNotFoundException: No content provider: https://78.media.tumblr.com/c7a862f10e42e8a7fa3439cf793283f8/tumblr_p2x7exUGsO1rvoqjeo1_1280.png
04-23 13:31:28.056 12754-12754/? I/Glide: Root cause (1 of 1)
    java.io.FileNotFoundException: No content provider: https://78.media.tumblr.com/c7a862f10e42e8a7fa3439cf793283f8/tumblr_p2x7exUGsO1rvoqjeo1_1280.png
        at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1167)
        at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1000)
        at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:923)
        at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:22)
        at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:13)
        at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:44)
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:272)
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
        at java.lang.Thread.run(Thread.java:761)
        at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)
sjudd commented 6 years ago

I am able to reproduce this error message with https://flickr.com/photos/122091795@N06/26676774137. However that's because it's an HTML page, not an image url. Glide won't be able to successfully load HTML pages, so the best we'd do there is change the error message.

Does anyone here have a url that works on a previous version of Glide or that they otherwise expect to be able to view successfully? Or is it just that this error message is confusing when you provide a non-image url?

sjudd commented 6 years ago

I'll give some thought about how we can better surface an error for non-image content. We can remove the content provider error, but you'll probably end up with no specific cause at all. We can't generically ignore content types we don't recognize because someone could always register a new ModelLoader that can load those types. We'd also have to update our whitelist every time a new content type was supported by Android.

shalevmo commented 6 years ago

@sjudd if you wanna reproduce it, try running on virtual device (API 19 or 17). In my case this link https://www.mishloha.co.il/files/rest_logo/211201440633037.jpg works on virtual device using Pixel 2 API 25 image, but it's not loading on virtual devices running API 19 or 17.

iBotasky commented 6 years ago

@sjudd Is this about the permission:? I request the permission for Manifest.permission.READ_PHONE_STATE, Manifest.permission.WRITE_EXTERNAL_STORAGE and then the glide works fine. And when i remove these two permissions, the glide will pop the trace at the same phone.

keien411 commented 6 years ago

@sjudd i encountered the same error,it don't work for me , you can try this link https://img.qiuyoule.com/channel/20180428/1524874975680.jpg

curiousily commented 6 years ago

Hi @sjudd,

I just encountered the same error on emulator API 27 Glide 4.7.1:

class com.bumptech.glide.load.engine.GlideException: Failed to load resource
    There were 2 causes:
    javax.net.ssl.SSLHandshakeException(Chain validation failed)
    java.io.FileNotFoundException(No content provider: https://images.unsplash.com/photo-1505135567926-bed647c38a83?ixlib=rb-0.3.5&ixid=eyJhcHBfaWQiOjI2MzUyfQ&s=549e0587febd04d661b8e9217c26fc68)
     call GlideException#logRootCauses(String) for more detail
      Cause (1 of 2): class com.bumptech.glide.load.engine.GlideException: Fetching data failed, class java.io.InputStream, REMOTE
    There was 1 cause:
    javax.net.ssl.SSLHandshakeException(Chain validation failed)
     call GlideException#logRootCauses(String) for more detail
        Cause (1 of 1): class com.bumptech.glide.load.engine.GlideException: Fetch failed
    There was 1 cause:
    javax.net.ssl.SSLHandshakeException(Chain validation failed)
     call GlideException#logRootCauses(String) for more detail
          Cause (1 of 1): class javax.net.ssl.SSLHandshakeException: Chain validation failed
      Cause (2 of 2): class com.bumptech.glide.load.engine.GlideException: Fetching data failed, class android.content.res.AssetFileDescriptor, LOCAL
    There was 1 cause:
    java.io.FileNotFoundException(No content provider: https://images.unsplash.com/photo-1505135567926-bed647c38a83?ixlib=rb-0.3.5&ixid=eyJhcHBfaWQiOjI2MzUyfQ&s=549e0587febd04d661b8e9217c26fc68)
     call GlideException#logRootCauses(String) for more detail
        Cause (1 of 1): class java.io.FileNotFoundException: No content provider: https://images.unsplash.com/photo-1505135567926-bed647c38a83?ixlib=rb-0.3.5&ixid=eyJhcHBfaWQiOjI2MzUyfQ&s=549e0587febd04d661b8e9217c26fc68
05-07 20:51:33.028 16181-16181/io.ipoli.android E/PlanDayMotivationViewController$onCreateView: class com.bumptech.glide.load.engine.GlideException: Failed to load resource
    There were 2 causes:
    javax.net.ssl.SSLHandshakeException(Chain validation failed)
    java.io.FileNotFoundException(No content provider: https://images.unsplash.com/photo-1505135567926-bed647c38a83?ixlib=rb-0.3.5&ixid=eyJhcHBfaWQiOjI2MzUyfQ&s=549e0587febd04d661b8e9217c26fc68)
     call GlideException#logRootCauses(String) for more detail
      Cause (1 of 2): class com.bumptech.glide.load.engine.GlideException: Fetching data failed, class java.io.InputStream, REMOTE
    There was 1 cause:
    javax.net.ssl.SSLHandshakeException(Chain validation failed)
     call GlideException#logRootCauses(String) for more detail
        Cause (1 of 1): class com.bumptech.glide.load.engine.GlideException: Fetch failed
    There was 1 cause:
    javax.net.ssl.SSLHandshakeException(Chain validation failed)
     call GlideException#logRootCauses(String) for more detail
          Cause (1 of 1): class javax.net.ssl.SSLHandshakeException: Chain validation failed
      Cause (2 of 2): class com.bumptech.glide.load.engine.GlideException: Fetching data failed, class android.content.res.AssetFileDescriptor, LOCAL
    There was 1 cause:
    java.io.FileNotFoundException(No content provider: https://images.unsplash.com/photo-1505135567926-bed647c38a83?ixlib=rb-0.3.5&ixid=eyJhcHBfaWQiOjI2MzUyfQ&s=549e0587febd04d661b8e9217c26fc68)
     call GlideException#logRootCauses(String) for more detail
        Cause (1 of 1): class java.io.FileNotFoundException: No content provider: https://images.unsplash.com/photo-1505135567926-bed647c38a83?ixlib=rb-0.3.5&ixid=eyJhcHBfaWQiOjI2MzUyfQ&s=549e0587febd04d661b8e9217c26fc68

Here is the url https://images.unsplash.com/photo-1505135567926-bed647c38a83?ixlib=rb-0.3.5&ixid=eyJhcHBfaWQiOjI2MzUyfQ&s=549e0587febd04d661b8e9217c26fc68

Here are the response headers from this url when requesting using Chrome:

accept-ranges: bytes
age: 0
cache-control: public,max-age=315360000
content-length: 2806014
content-type: image/jpeg
date: Sat, 12 May 2018 10:21:54 GMT
last-modified: Sat, 12 May 2018 10:21:54 GMT
server: imgix-fe
status: 200
x-cache: MISS, MISS
x-content-type-options: nosniff
x-served-by: cache-lax8635-LAX, cache-fra19136-FRA

First tried with the Glide client, then hit the url using Chrome. Any ideas?

curiousily commented 6 years ago

More importantly, the same setup loads the image just fine on Linux (Ubuntu 18.04) machine. I tested on Mac OS (High Siera 10.13.4) previously.

meidikawardana commented 6 years ago

any progress on this issue? it's been 3 months and no update from library makers. this problem still exists on latest version 4.7.1. there is even a stackoverflow post about this. https://stackoverflow.com/questions/49706014/glide-filenotfoundexception-no-content-provider-when-loading-images-from-intern

please fix this.. this is definitely bug from the library.

Greger34 commented 6 years ago

If anyone else has this issue, mine was that I accidentally had quotation marks around my URL. I feel like an idiot right now, haha.

So this issue might be related to a malformed URL in one way or another.

cuichanghao commented 6 years ago

Same problem

may be not support this kind path?

https://stg-img-mdpr.freetls.fastly.net/article/VMmO/nm/VMmO47dIPsW0Vxa4e1fe5mfr0smmkb3_NoHF0bxBeyw.jpg

EDIT after restart my emulator this problem sloved! may be reinstall many times app cause glide internal crash?



05-23 18:57:51.344 24158-24158/jp.mdpr.mdprviewer.debug W/Glide: Load failed for https://stg-img-mdpr.freetls.fastly.net/article/VMmO/nm/VMmO47dIPsW0Vxa4e1fe5mfr0smmkb3_NoHF0bxBeyw.jpg with size [315x210]
    class com.bumptech.glide.load.engine.GlideException: Failed to load resource
    There was 1 cause:
    java.io.FileNotFoundException(No content provider: https://stg-img-mdpr.freetls.fastly.net/article/VMmO/nm/VMmO47dIPsW0Vxa4e1fe5mfr0smmkb3_NoHF0bxBeyw.jpg)
     call GlideException#logRootCauses(String) for more detail
      Cause (1 of 1): class com.bumptech.glide.load.engine.GlideException: Fetching data failed, class android.content.res.AssetFileDescriptor, LOCAL, DataCacheKey{sourceKey=https://stg-img-mdpr.freetls.fastly.net/article/VMmO/nm/VMmO47dIPsW0Vxa4e1fe5mfr0smmkb3_NoHF0bxBeyw.jpg, signature=EmptySignature}
    There was 1 cause:
    java.io.FileNotFoundException(No content provider: https://stg-img-mdpr.freetls.fastly.net/article/VMmO/nm/VMmO47dIPsW0Vxa4e1fe5mfr0smmkb3_NoHF0bxBeyw.jpg)
     call GlideException#logRootCauses(String) for more detail
        Cause (1 of 1): class java.io.FileNotFoundException: No content provider: https://stg-img-mdpr.freetls.fastly.net/article/VMmO/nm/VMmO47dIPsW0Vxa4e1fe5mfr0smmkb3_NoHF0bxBeyw.jpg
05-23 18:57:51.344 24158-24158/jp.mdpr.mdprviewer.debug I/Glide: Root cause (1 of 1)
    java.io.FileNotFoundException: No content provider: https://stg-img-mdpr.freetls.fastly.net/article/VMmO/nm/VMmO47dIPsW0Vxa4e1fe5mfr0smmkb3_NoHF0bxBeyw.jpg
        at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1396)
        at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1247)
        at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1170)
        at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:22)
        at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:13)
        at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:44)
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:299)
        at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:269)
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:230)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
        at java.lang.Thread.run(Thread.java:764)
        at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)```
jt535 commented 6 years ago

I had the same issue No content provider: exception, but it was because the url did not have an extension, i.e., https://www.website.com/image 👎 which was fixed by adding the extension https://www.website.com/image.jpg👍

cuichanghao commented 6 years ago

this thread problem is when correct url request glide is strange. not what you guys said forgot http:// or .jpg.

jt535 commented 6 years ago

@cuichanghao There are a couple of posts here where people have included a stack trace with a url that does not have a file extension, e.g.,

java.io.FileNotFoundException(No content provider: https://images.unsplash.com/photo-1505135567926-bed647c38a83?ixlib=rb-0.3.5&ixid=eyJhcHBfaWQiOjI2MzUyfQ&s=549e0587febd04d661b8e9217c26fc68)

java.io.FileNotFoundException: No content provider: https://flickr.com/photos/122091795@N06/26676774137

The issue for these people may be that there is no file extension

dementia2029 commented 6 years ago

Fuck. Fresco and Glide does not work atleast on Android P

tsirolnik commented 6 years ago

I would just like to note that I'm suddenly experiencing this error too. Code worked perfectly, re-ran the app and suddenly getting this error.

Code

Glide
    .with(getApplicationContext())
    .asBitmap()
    .load("<imgurl>")
    .into(new SimpleTarget<Bitmap>(200, 200) {
        @Override
        public void onResourceReady(@NonNull Bitmap resource, @Nullable Transition<? super Bitmap> transition) {
               // Do stuff with the bitmap
        }
    });

Error

07-03 13:12:32.321 4248-4248/com.app.app W/Glide: Failed to find GeneratedAppGlideModule. You should include an annotationProcessor compile dependency on com.github.bumptech.glide:compiler in your application and a @GlideModule annotated AppGlideModule implementation or LibraryGlideModules will be silently ignored
07-03 13:12:32.428 4248-4298/com.app.app W/ContextImpl: Failed to ensure /data/user/0/com.app.app/cache: mkdir failed: ENOENT (No such file or directory)
07-03 13:12:32.429 4248-4298/com.app.app W/ContextImpl: Failed to update user.inode_cache: stat failed: ENOENT (No such file or directory)
07-03 13:12:32.466 4248-4299/com.app.app D/NetworkSecurityConfig: No Network Security Config specified, using platform default
07-03 13:12:33.116 4248-4248/com.app.app W/Glide: Load failed for http://website.com/image.png with size [200x200]
    class com.bumptech.glide.load.engine.GlideException: Failed to load resource
    There was 1 cause:
    java.io.FileNotFoundException(No content provider: http://website.com/image.png)
     call GlideException#logRootCauses(String) for more detail
      Cause (1 of 1): class com.bumptech.glide.load.engine.GlideException: Fetching data failed, class android.content.res.AssetFileDescriptor, LOCAL, DataCacheKey{sourceKey=http://website.com/image.png, signature=EmptySignature}
    There was 1 cause:
    java.io.FileNotFoundException(No content provider: http://website.com/image.png)
     call GlideException#logRootCauses(String) for more detail
        Cause (1 of 1): class java.io.FileNotFoundException: No content provider: http://website.com/image.png
07-03 13:12:33.122 4248-4248/com.app.app I/Glide: Root cause (1 of 1)
    java.io.FileNotFoundException: No content provider: http://website.com/image.png
        at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1396)
        at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1247)
        at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1170)
        at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:22)
        at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:13)
        at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:44)
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:272)
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
        at java.lang.Thread.run(Thread.java:764)
        at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)
korchix commented 6 years ago

i have also the same issue on Devices with android API < 24, in all the other >= 24 it works just finde. Glider Version 4.7.1 Permission used:

`

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />`

OKhttp: `public class OkNetworkClient { OkHttpClient client = new OkHttpClient();

public String run(String url) throws IOException {
    Request request = new Request.Builder()
            .url(url)
            .build();
    try (Response response = client.newCall(request).execute()){
        return response.body().string();
    }
}

}`

the kind of url. i'm trying to load is : (there is no spacing bevor or after the url) http:/korchix.com/inspiquotes/quotes/00ee05a37ce7a6a4a11af58acd50bd5c.jpg

Glide Code:

`ImageView mImageView; ImageModel mImageModel; ProgressBar mProgressBar;

    public MyViewHolder(View itemView) {
        super(itemView);

        mImageView = (ImageView) itemView.findViewById(R.id.thumbnail);
        mProgressBar = (ProgressBar) itemView.findViewById(R.id.progressBar);
        itemView.setOnClickListener(this);
    }

    public void bind(ImageModel imageModel) {
        mImageModel = imageModel;
        Glide.with(mContext)
                .load(mImageModel.getBild())
                .listener(new RequestListener<Drawable>() {
                    @Override
                    public boolean onLoadFailed(@Nullable GlideException e, Object model, Target<Drawable> target, boolean isFirstResource) {
                        mProgressBar.setVisibility(View.GONE);
                        return false;
                    }

                    @Override
                    public boolean onResourceReady(Drawable resource, Object model, Target<Drawable> target, DataSource dataSource, boolean isFirstResource) {
                        mProgressBar.setVisibility(View.GONE);
                        return false;
                    }
                })
                .into(mImageView);

    }

`

Greger34 commented 6 years ago

@korchix http:/korchix.com/inspiquotes/quotes/00ee05a37ce7a6a4a11af58acd50bd5c.jpg needs to be http://korchix.com/inspiquotes/quotes/00ee05a37ce7a6a4a11af58acd50bd5c.jpg

Try that.

korchix commented 6 years ago

@Greger34 ohh, i can't believe, that i didn't saw it !!! thank you. it works now without problems.

dementia2029 commented 6 years ago

Hi. I have found, that on Android P and one some specific devices HTTP requests does not work. To fix we can disable network security for our specific domain like below:

1) create xml in res/xml <?xml version="1.0" encoding="utf-8"?>

YOURDOMAIN

2) in manifest file add this to application tag: android:networkSecurityConfig="@xml/network_security_config"

trod-123 commented 6 years ago

Been lurking this thread for a day while I was trying to figure out how to solve my issue, but since my issue is related I'm going to post this here - let me know if otherwise and if this should fall in its own issue.

ISSUE: Loading a frame from a video url when emulating devices with SDK lower than 23 (Lollipop and lower) results in a java.io.FileNotfoundException: No content provider error.

Using the latest version of Glide: 4.7.1 Impacts only SDK less than 23 (L and earlier). For SDK 23 and newer (M onward), I don't get this issue

I made the below implementation as clean as possible to reproduce the bug that was occurring in my app, so the below is the only activity I have (other than my AppGlideModule implementation). I have imported no other libraries into this test project so this is as pure as it gets.

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ImageView;

public class MainActivity extends AppCompatActivity {

    String videoUrl = "https://d17h27t6h515a5.cloudfront.net/topher/2017/April/58ffdb3a_3-mix-sugar-salt-together-cheesecake/3-mix-sugar-salt-together-cheesecake.mp4";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        ImageView iv = findViewById(R.id.iv);

        GlideApp.with(this)
                .load(videoUrl)
                .frame(0L)
                .into(iv);
    }
}

Stacktrace:

07-26 13:00:33.320 5195-5195/com.zn.glidetest W/Glide: Load failed for http://d17h27t6h515a5.cloudfront.net/topher/2017/April/58ffdb3a_3-mix-sugar-salt-together-cheesecake/3-mix-sugar-salt-together-cheesecake.mp4 with size [1080x525]
    class com.bumptech.glide.load.engine.GlideException: Failed to load resource
    There was 1 cause:
    java.io.FileNotFoundException(No content provider: http://d17h27t6h515a5.cloudfront.net/topher/2017/April/58ffdb3a_3-mix-sugar-salt-together-cheesecake/3-mix-sugar-salt-together-cheesecake.mp4)
     call GlideException#logRootCauses(String) for more detail
      Cause (1 of 4): class com.bumptech.glide.load.engine.GlideException: Failed LoadPath{DirectByteBuffer->Object->Drawable}, REMOTE, http://d17h27t6h515a5.cloudfront.net/topher/2017/April/58ffdb3a_3-mix-sugar-salt-together-cheesecake/3-mix-sugar-salt-together-cheesecake.mp4
        Cause (1 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{DirectByteBuffer->GifDrawable->Drawable}
        Cause (2 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{DirectByteBuffer->Bitmap->Drawable}
        Cause (3 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{DirectByteBuffer->BitmapDrawable->Drawable}
      Cause (2 of 4): class com.bumptech.glide.load.engine.GlideException: Failed LoadPath{FileInputStream->Object->Drawable}, REMOTE, http://d17h27t6h515a5.cloudfront.net/topher/2017/April/58ffdb3a_3-mix-sugar-salt-together-cheesecake/3-mix-sugar-salt-together-cheesecake.mp4
        Cause (1 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{FileInputStream->GifDrawable->Drawable}
        Cause (2 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{FileInputStream->Bitmap->Drawable}
        Cause (3 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{FileInputStream->BitmapDrawable->Drawable}
      Cause (3 of 4): class com.bumptech.glide.load.engine.GlideException: Failed LoadPath{ParcelFileDescriptor->Object->Drawable}, REMOTE, http://d17h27t6h515a5.cloudfront.net/topher/2017/April/58ffdb3a_3-mix-sugar-salt-together-cheesecake/3-mix-sugar-salt-together-cheesecake.mp4
        Cause (1 of 2): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{ParcelFileDescriptor->Bitmap->Drawable}
        Cause (2 of 2): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{ParcelFileDescriptor->BitmapDrawable->Drawable}
      Cause (4 of 4): class com.bumptech.glide.load.engine.GlideException: Fetching data failed, class android.content.res.AssetFileDescriptor, LOCAL, DataCacheKey{sourceKey=http://d17h27t6h515a5.cloudfront.net/topher/2017/April/58ffdb3a_3-mix-sugar-salt-together-cheesecake/3-mix-sugar-salt-together-cheesecake.mp4, signature=EmptySignature}
    There was 1 cause:
    java.io.FileNotFoundException(No content provider: http://d17h27t6h515a5.cloudfront.net/topher/2017/April/58ffdb3a_3-mix-sugar-salt-together-cheesecake/3-mix-sugar-salt-together-cheesecake.mp4)
     call GlideException#logRootCauses(String) for more detail
        Cause (1 of 1): class java.io.FileNotFoundException: No content provider: http://d17h27t6h515a5.cloudfront.net/topher/2017/April/58ffdb3a_3-mix-sugar-salt-together-cheesecake/3-mix-sugar-salt-together-cheesecake.mp4
07-26 12:51:06.660 5023-5023/? I/Glide: Root cause (1 of 1)
    java.io.FileNotFoundException: No content provider: https://d17h27t6h515a5.cloudfront.net/topher/2017/April/58ffdb3a_3-mix-sugar-salt-together-cheesecake/3-mix-sugar-salt-together-cheesecake.mp4
        at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1066)
        at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:921)
        at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:848)
        at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:22)
        at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:13)
        at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:44)
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:418)
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.SourceGenerator.onDataFetcherReady(SourceGenerator.java:135)
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76)
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:49)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:418)
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.SourceGenerator.onDataFetcherReady(SourceGenerator.java:135)
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76)
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:49)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:418)
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.SourceGenerator.onDataFetcherReady(SourceGenerator.java:135)
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.model.ByteBufferFileLoader$ByteBufferFetcher.loadData(ByteBufferFileLoader.java:74)
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:49)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:272)
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
        at java.lang.Thread.run(Thread.java:818)
        at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)

Is there a way around this other than abandoning Glide for the older SDKs? Let me know if you need anything else. Thanks in advance!

basti12354 commented 6 years ago

Hey, I am having a similar issue with glide (same problems with picasso.) On my emulator some images won't be loaded (API 26). On a real device every single image will be loaded successfully. (API 26) I am loading the images inside a recycleview adapter with: glide.load(mealItem.getImageURL()).into(holder.itemImage);

Example error `07-12 01:17:28.481 19450-19450/com.basti12354.mealfinder W/Glide: Load failed for https://static.chefkoch-cdn.de/ck.de/rezepte/9/9860/344325-420x280-fix-penne-al-arrabiata.jpg with size [1776x1776] class com.bumptech.glide.load.engine.GlideException: Failed to load resource There were 2 causes: javax.net.ssl.SSLHandshakeException(Chain validation failed) java.io.FileNotFoundException(No content provider: https://static.chefkoch-cdn.de/ck.de/rezepte/9/9860/344325-420x280-fix-penne-al-arrabiata.jpg) call GlideException#logRootCauses(String) for more detail Cause (1 of 2): class com.bumptech.glide.load.engine.GlideException: Fetching data failed, class java.io.InputStream, REMOTE There was 1 cause: javax.net.ssl.SSLHandshakeException(Chain validation failed) call GlideException#logRootCauses(String) for more detail Cause (1 of 1): class com.bumptech.glide.load.engine.GlideException: Fetch failed There was 1 cause: javax.net.ssl.SSLHandshakeException(Chain validation failed) call GlideException#logRootCauses(String) for more detail Cause (1 of 1): class javax.net.ssl.SSLHandshakeException: Chain validation failed Cause (2 of 2): class com.bumptech.glide.load.engine.GlideException: Fetching data failed, class android.content.res.AssetFileDescriptor, LOCAL There was 1 cause: java.io.FileNotFoundException(No content provider: https://static.chefkoch-cdn.de/ck.de/rezepte/9/9860/344325-420x280-fix-penne-al-arrabiata.jpg) call GlideException#logRootCauses(String) for more detail Cause (1 of 1): class java.io.FileNotFoundException: No content provider: https://static.chefkoch-cdn.de/ck.de/rezepte/9/9860/344325-420x280-fix-penne-al-arrabiata.jpg 07-12 01:17:28.501 19450-19450/com.basti12354.mealfinder I/Glide: Root cause (1 of 2) javax.net.ssl.SSLHandshakeException: Chain validation failed at com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:355) at com.android.okhttp.internal.io.RealConnection.connectTls(RealConnection.java:192) at com.android.okhttp.internal.io.RealConnection.connectSocket(RealConnection.java:149) at com.android.okhttp.internal.io.RealConnection.connect(RealConnection.java:112) at com.android.okhttp.internal.http.StreamAllocation.findConnection(StreamAllocation.java:184) at com.android.okhttp.internal.http.StreamAllocation.findHealthyConnection(StreamAllocation.java:126) at com.android.okhttp.internal.http.StreamAllocation.newStream(StreamAllocation.java:95) at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:281) at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:224) at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:461) at com.android.okhttp.internal.huc.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:127) at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.connect(DelegatingHttpsURLConnection.java:89) at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.connect(Unknown Source:0) at com.bumptech.glide.load.data.HttpUrlFetcher.loadDataWithRedirects(HttpUrlFetcher.java:104) at com.bumptech.glide.load.data.HttpUrlFetcher.loadData(HttpUrlFetcher.java:59) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:99) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:150) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:144) at com.bumptech.glide.load.data.HttpUrlFetcher.loadData(HttpUrlFetcher.java:65) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:99) at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62) at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302) at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:272) at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636) at java.lang.Thread.run(Thread.java:764) at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446) Caused by: java.security.cert.CertificateException: Chain validation failed at com.android.org.conscrypt.TrustManagerImpl.verifyChain(TrustManagerImpl.java:705) at com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive(TrustManagerImpl.java:537) at com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive(TrustManagerImpl.java:558) at com.android.org.conscrypt.TrustManagerImpl.checkTrustedRecursive(TrustManagerImpl.java:603) at com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:493) at com.android.org.conscrypt.TrustManagerImpl.checkTrusted(TrustManagerImpl.java:416) at com.android.org.conscrypt.TrustManagerImpl.getTrustedChainForServer(TrustManagerImpl.java:337) at android.security.net.config.NetworkSecurityTrustManager.checkServerTrusted(NetworkSecurityTrustManager.java:94) at android.security.net.config.RootTrustManager.checkServerTrusted(RootTrustManager.java:88) at com.android.org.conscrypt.Platform.checkServerTrusted(Platform.java:203) at com.android.org.conscrypt.OpenSSLSocketImpl.verifyCertificateChain(OpenSSLSocketImpl.java:592) at com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(Native Method) at com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:351) at com.android.okhttp.internal.io.RealConnection.connectTls(RealConnection.java:192)  at com.android.okhttp.internal.io.RealConnection.connectSocket(RealConnection.java:149)  at com.android.okhttp.internal.io.RealConnection.connect(RealConnection.java:112)  at com.android.okhttp.internal.http.StreamAllocation.findConnection(StreamAllocation.java:184)  at com.android.okhttp.internal.http.StreamAllocation.findHealthyConnection(StreamAllocation.java:126)  at com.android.okhttp.internal.http.StreamAllocation.newStream(StreamAllocation.java:95)  at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:281)  at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:224)  at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:461)  at com.android.okhttp.internal.huc.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:127)  at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.connect(DelegatingHttpsURLConnection.java:89)  at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.connect(Unknown Source:0)  at com.bumptech.glide.load.data.HttpUrlFetcher.loadDataWithRedirects(HttpUrlFetcher.java:104)  at com.bumptech.glide.load.data.HttpUrlFetcher.loadData(HttpUrlFetcher.java:59)  at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:99)  at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:150)  at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:144)  at com.bumptech.glide.load.data.HttpUrlFetcher.loadData(HttpUrlFetcher.java:65)  at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:99)  at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)  at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)  at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:272)  at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233)  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)  at java.lang.Thread.run(Thread.java:764)  at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)  Caused by: java.security.cert.CertPathValidatorException: Response is unreliable: its validity interval is out-of-date 07-12 01:17:28.509 19450-19450/com.basti12354.mealfinder I/Glide: at sun.security.provider.certpath.PKIXMasterCertPathValidator.validate(PKIXMasterCertPathValidator.java:133) at sun.security.provider.certpath.PKIXCertPathValidator.validate(PKIXCertPathValidator.java:225) at sun.security.provider.certpath.PKIXCertPathValidator.validate(PKIXCertPathValidator.java:143) at sun.security.provider.certpath.PKIXCertPathValidator.engineValidate(PKIXCertPathValidator.java:79) at java.security.cert.CertPathValidator.validate(CertPathValidator.java:301) at com.android.org.conscrypt.TrustManagerImpl.verifyChain(TrustManagerImpl.java:701) ... 39 more Caused by: java.security.cert.CertPathValidatorException: Response is unreliable: its validity interval is out-of-date at sun.security.provider.certpath.OCSPResponse.verify(OCSPResponse.java:619) at sun.security.provider.certpath.RevocationChecker.checkOCSP(RevocationChecker.java:709) at sun.security.provider.certpath.RevocationChecker.check(RevocationChecker.java:363) at sun.security.provider.certpath.RevocationChecker.check(RevocationChecker.java:337) at sun.security.provider.certpath.PKIXMasterCertPathValidator.validate(PKIXMasterCertPathValidator.java:125) ... 44 more Suppressed: java.security.cert.CertPathValidatorException: Could not determine revocation status at sun.security.provider.certpath.RevocationChecker.buildToNewKey(RevocationChecker.java:1092) at sun.security.provider.certpath.RevocationChecker.verifyWithSeparateSigningKey(RevocationChecker.java:910) at sun.security.provider.certpath.RevocationChecker.checkCRLs(RevocationChecker.java:577) at sun.security.provider.certpath.RevocationChecker.checkCRLs(RevocationChecker.java:465) at sun.security.provider.certpath.RevocationChecker.check(RevocationChecker.java:394) ... 46 more 07-12 01:17:28.519 19450-19450/com.basti12354.mealfinder I/Glide: Root cause (2 of 2) java.io.FileNotFoundException: No content provider: https://static.chefkoch-cdn.de/ck.de/rezepte/9/9860/344325-420x280-fix-penne-al-arrabiata.jpg at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1396) at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1247) at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1170) at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:22) at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:13) at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:44) at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62) at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302) at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherFailed(DecodeJob.java:397) at com.bumptech.glide.load.engine.SourceGenerator.onLoadFailed(SourceGenerator.java:119) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:153) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:144) at com.bumptech.glide.load.data.HttpUrlFetcher.loadData(HttpUrlFetcher.java:65) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:99) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:150) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:144) at com.bumptech.glide.load.data.HttpUrlFetcher.loadData(HttpUrlFetcher.java:65) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:99) at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62) at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302) at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:272) at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636) at java.lang.Thread.run(Thread.java:764) at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446) 07-12 01:17:28.592 19450-19461/com.basti12354.mealfinder I/zygote: Background concurrent copying GC freed 15349(680KB) AllocSpace objects, 73(11MB) LOS objects, 28% free, 14MB/20MB, paused 1.168ms total 225.612ms`
nekdenis commented 6 years ago

I'm experiencing the same issue. @sjudd Any ideas why after MultiModelLoader$MultiFetcher.onLoadFailed called LocalUriFetcher for regular https Url? I think that error placeholder should be loaded into view in that case

bochitan commented 6 years ago

I got same problem :(

How can i workaround this problem? Thanks in advance

Info : Glide 4.7.1

ImageView imageView = itemView.findViewById(R.id.img); Glide.with(mContext).load("https://7500m.com/attachments/apple-macbook-12-inch-2017-01-jpg.1/").into(imageView);

java.io.FileNotFoundException: https://7500m.com/attachments/apple-macbook-12-inch-2017-01-jpg.1/ at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:251) at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getInputStream(DelegatingHttpsURLConnection.java:210) at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getInputStream(Unknown Source:0) at com.bumptech.glide.load.data.HttpUrlFetcher.loadDataWithRedirects(HttpUrlFetcher.java:106) at com.bumptech.glide.load.data.HttpUrlFetcher.loadData(HttpUrlFetcher.java:59) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:99) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:150) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:144) at com.bumptech.glide.load.data.HttpUrlFetcher.loadData(HttpUrlFetcher.java:65) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:99) at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62) at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302) at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:272) at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636) at java.lang.Thread.run(Thread.java:764) at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446) Root cause (2 of 2) java.io.FileNotFoundException: No content provider: https://7500m.com/attachments/apple-macbook-12-inch-2017-01-jpg.1/ at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1396) at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1247) at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1170) at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:22) at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:13) at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:44) at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62) at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302) at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherFailed(DecodeJob.java:397) at com.bumptech.glide.load.engine.SourceGenerator.onLoadFailed(SourceGenerator.java:119) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:153) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:144) at com.bumptech.glide.load.data.HttpUrlFetcher.loadData(HttpUrlFetcher.java:65) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:99) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:150) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:144) at com.bumptech.glide.load.data.HttpUrlFetcher.loadData(HttpUrlFetcher.java:65) at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:99) at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62) at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302) at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:272) at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636) at java.lang.Thread.run(Thread.java:764)

avevanja commented 6 years ago

i fix this problem, device had a wrong data and time

nekdenis commented 6 years ago

No, you did not fix the problem. If a server returns 404 than this issue happens and no fallback to a placeholder

AlexBonel commented 6 years ago

If this could be relevant, we've observed the problem on the device with small available space on disk.

But it's still strange that Glide doesn't load the resource from the network and doesn't keep it in memory cache after the load finished.

sjudd commented 6 years ago

Let me know if you're able to reproduce this on 4.8.0

ravivlb commented 6 years ago

even on 4.8.0, showing same on Android 5.1.1.

sjudd commented 6 years ago

Can you provide the stack trace on 4.8.0?

jahonn commented 6 years ago

Hi @sjudd ,I can reproduce this with 4.8.0 on Android M and below devices. But can't reproduce it on N and heigher devices.

I post the log below.

09-13 11:59:18.072 7814-7814/com.dubang.reader W/Glide: Load failed for http://novel.ywread.net/public/uploads/images/20180720/1830a26f47ccc82f4a9445243b25f4f2.jpg with size [180x240]
    class com.bumptech.glide.load.engine.GlideException: Failed to load resource
    There were 4 causes:
    java.io.IOException(Exception decoding bitmap, outWidth: 600, outHeight: 800, outMimeType: image/jpeg, inBitmap: [180x240] ARGB_8888 (172800))
    com.bumptech.glide.load.resource.bitmap.RecyclableBufferedInputStream$InvalidMarkException(Mark has been invalidated, pos: 49152 markLimit: 65536)
    java.io.IOException(Exception decoding bitmap, outWidth: 600, outHeight: 800, outMimeType: image/jpeg, inBitmap: [180x240] ARGB_8888 (172800))
    com.bumptech.glide.load.resource.bitmap.RecyclableBufferedInputStream$InvalidMarkException(Mark has been invalidated, pos: 49152 markLimit: 65536)
     call GlideException#logRootCauses(String) for more detail
      Cause (1 of 6): class com.bumptech.glide.load.engine.GlideException: Failed LoadPath{DirectByteBuffer->Object->Drawable}, DATA_DISK_CACHE, http://novel.ywread.net/public/uploads/images/20180720/1830a26f47ccc82f4a9445243b25f4f2.jpg
        Cause (1 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{DirectByteBuffer->c->Drawable}
        Cause (2 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{DirectByteBuffer->Bitmap->Drawable}
        Cause (3 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{DirectByteBuffer->BitmapDrawable->Drawable}
      Cause (2 of 6): class com.bumptech.glide.load.engine.GlideException: Failed LoadPath{FileInputStream->Object->Drawable}, DATA_DISK_CACHE, http://novel.ywread.net/public/uploads/images/20180720/1830a26f47ccc82f4a9445243b25f4f2.jpg
    There were 2 causes:
    java.io.IOException(Exception decoding bitmap, outWidth: 600, outHeight: 800, outMimeType: image/jpeg, inBitmap: [180x240] ARGB_8888 (172800))
    com.bumptech.glide.load.resource.bitmap.RecyclableBufferedInputStream$InvalidMarkException(Mark has been invalidated, pos: 49152 markLimit: 65536)
     call GlideException#logRootCauses(String) for more detail
        Cause (1 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{FileInputStream->c->Drawable}
        Cause (2 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{FileInputStream->Bitmap->Drawable}
    There was 1 cause:
    java.io.IOException(Exception decoding bitmap, outWidth: 600, outHeight: 800, outMimeType: image/jpeg, inBitmap: [180x240] ARGB_8888 (172800))
     call GlideException#logRootCauses(String) for more detail
          Cause (1 of 1): class java.io.IOException: Exception decoding bitmap, outWidth: 600, outHeight: 800, outMimeType: image/jpeg, inBitmap: [180x240] ARGB_8888 (172800)
        Cause (3 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{FileInputStream->BitmapDrawable->Drawable}
    There was 1 cause:
    com.bumptech.glide.load.resource.bitmap.RecyclableBufferedInputStream$InvalidMarkException(Mark has been invalidated, pos: 49152 markLimit: 65536)
     call GlideException#logRootCauses(String) for more detail
          Cause (1 of 1): class com.bumptech.glide.load.resource.bitmap.RecyclableBufferedInputStream$InvalidMarkException: Mark has been invalidated, pos: 49152 markLimit: 65536
      Cause (3 of 6): class com.bumptech.glide.load.engine.GlideException: Failed LoadPath{ParcelFileDescriptor->Object->Drawable}, DATA_DISK_CACHE, http://novel.ywread.net/public/uploads/images/20180720/1830a26f47ccc82f4a9445243b25f4f2.jpg
        Cause (1 of 2): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{ParcelFileDescriptor->Bitmap->Drawable}
        Cause (2 of 2): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{ParcelFileDescriptor->BitmapDrawable->Drawable}
      Cause (4 of 6): class com.bumptech.glide.load.engine.GlideException: Failed LoadPath{DirectByteBuffer->Object->Drawable}, REMOTE, http://novel.ywread.net/public/uploads/images/20180720/1830a26f47ccc82f4a9445243b25f4f2.jpg
        Cause (1 of 3): class com.bumptech.glide.load.engine.GlideException: Failed 
09-13 11:59:18.073 7814-7814/com.dubang.reader I/Glide: Root cause (1 of 4)
    java.io.IOException: Exception decoding bitmap, outWidth: 600, outHeight: 800, outMimeType: image/jpeg, inBitmap: [180x240] ARGB_8888 (172800)
        at com.bumptech.glide.load.resource.bitmap.k.a(Downsampler.java:659)
        at com.bumptech.glide.load.resource.bitmap.k.b(Downsampler.java:586)
        at com.bumptech.glide.load.resource.bitmap.k.a(Downsampler.java:299)
        at com.bumptech.glide.load.resource.bitmap.k.a(Downsampler.java:206)
        at com.bumptech.glide.load.resource.bitmap.t.a(StreamBitmapDecoder.java:62)
        at com.bumptech.glide.load.resource.bitmap.t.a(StreamBitmapDecoder.java:18)
        at com.bumptech.glide.load.engine.g.a(DecodePath.java:72)
        at com.bumptech.glide.load.engine.g.a(DecodePath.java:55)
        at com.bumptech.glide.load.engine.g.a(DecodePath.java:45)
        at com.bumptech.glide.load.engine.q.a(LoadPath.java:58)
        at com.bumptech.glide.load.engine.q.a(LoadPath.java:43)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:507)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:472)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:458)
        at com.bumptech.glide.load.engine.DecodeJob.n(DecodeJob.java:410)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.b.f$c.a(FileLoader.java:76)
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.DecodeJob.k(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.n(DecodeJob.java:418)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.b.d$a.a(ByteBufferFileLoader.java:74)
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.DecodeJob.k(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.i(DecodeJob.java:269)
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
        at java.lang.Thread.run(Thread.java:833)
        at com.bumptech.glide.load.engine.c.a$a$1.run(GlideExecutor.java:446)
     Caused by: java.lang.IllegalArgumentException: Problem decoding into existing bitmap
        at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:673)
        at com.bumptech.glide.load.resource.bitmap.k.b(Downsampler.java:583)
        at com.bumptech.glide.load.resource.bitmap.k.a(Downsampler.java:299) 
        at com.bumptech.glide.load.resource.bitmap.k.a(Downsampler.java:206) 
        at com.bumptech.glide.load.resource.bitmap.t.a(StreamBitmapDecoder.java:62) 
        at com.bumptech.glide.load.resource.bitmap.t.a(StreamBitmapDecoder.java:18) 
        at com.bumptech.glide.load.engine.g.a(DecodePath.java:72) 
        at com.bumptech.glide.load.engine.g.a(DecodePath.java:55) 
        at com.bumptech.glide.load.engine.g.a(DecodePath.java:45) 
        at com.bumptech.glide.load.engine.q.a(LoadPath.java:58) 
        at com.bumptech.glide.load.engine.q.a(LoadPath.java:43) 
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:507) 
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:472) 
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:458) 
        at com.bumptech.glide.load.engine.DecodeJob.n(DecodeJob.java:410) 
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:379) 
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:95) 
        at com.bumptech.glide.load.b.f$c.a(FileLoader.java:76) 
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:75) 
        at com.bumptech.glide.load.engine.DecodeJob.k(DecodeJob.java:302) 
        at com.bumptech.glide.load.engine.DecodeJob.n(DecodeJob.java:418) 
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:379) 
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:95) 
        at com.bumptech.glide.load.b.d$a.a(ByteBufferFileLoader.java:74) 
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:75) 
        at com.bumptech.glide.load.engine.DecodeJob.k(DecodeJob.java:302) 
        at com.bumptech.glide.load.engine.DecodeJob.i(DecodeJob.java:269) 
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233) 
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 
        at java.lang.Thread.run(Thread.java:833) 
        at com.bumptech.glide.load.engine.c.a$a$1.run(GlideExecutor.java:446) 
    Root cause (2 of 4)
    com.bumptech.glide.load.resource.bitmap.RecyclableBufferedInputStream$InvalidMarkException: Mark has been invalidated, pos: 49152 markLimit: 65536
        at com.bumptech.glide.load.resource.bitmap.RecyclableBufferedInputStream.reset(RecyclableBufferedInputStream.java:354)
        at com.bumptech.glide.load.a.k.c(InputStreamRewinder.java:29)
        at com.bumptech.glide.load.a.k.a(InputStreamRewinder.java:14)
        at com.bumptech.glide.load.engine.g.a(DecodePath.java:69)
        at com.bumptech.glide.load.engine.g.a(DecodePath.java:55)
        at com.bumptech.glide.load.engine.g.a(DecodePath.java:45)
        at com.bumptech.glide.load.engine.q.a(LoadPath.java:58)
        at com.bumptech.glide.load.engine.q.a(LoadPath.java:43)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:507)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:472)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:458)
        at com.bumptech.glide.load.engine.DecodeJob.n(DecodeJob.java:410)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.b.f$c.a(FileLoader.java:76)
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.DecodeJob.k(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.n(DecodeJob.java:418)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.b.d$a.a(ByteBufferFileLoader.java:74)
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.DecodeJob.k(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.i(DecodeJob.java:269)
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
        at java.lang.Thread.run(Thread.java:833)
        at com.bumptech.glide.load.engine.c.a$a$1.run(GlideExecutor.java:446)
09-13 11:59:18.074 7814-7814/com.dubang.reader I/Glide: Root cause (3 of 4)
    java.io.IOException: Exception decoding bitmap, outWidth: 600, outHeight: 800, outMimeType: image/jpeg, inBitmap: [180x240] ARGB_8888 (172800)
        at com.bumptech.glide.load.resource.bitmap.k.a(Downsampler.java:659)
        at com.bumptech.glide.load.resource.bitmap.k.b(Downsampler.java:586)
        at com.bumptech.glide.load.resource.bitmap.k.a(Downsampler.java:299)
        at com.bumptech.glide.load.resource.bitmap.k.a(Downsampler.java:206)
        at com.bumptech.glide.load.resource.bitmap.t.a(StreamBitmapDecoder.java:62)
        at com.bumptech.glide.load.resource.bitmap.t.a(StreamBitmapDecoder.java:18)
        at com.bumptech.glide.load.engine.g.a(DecodePath.java:72)
        at com.bumptech.glide.load.engine.g.a(DecodePath.java:55)
        at com.bumptech.glide.load.engine.g.a(DecodePath.java:45)
        at com.bumptech.glide.load.engine.q.a(LoadPath.java:58)
        at com.bumptech.glide.load.engine.q.a(LoadPath.java:43)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:507)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:472)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:458)
        at com.bumptech.glide.load.engine.DecodeJob.n(DecodeJob.java:410)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.w.a(SourceGenerator.java:135)
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.b.f$c.a(FileLoader.java:76)
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.w.a(SourceGenerator.java:49)
        at com.bumptech.glide.load.engine.DecodeJob.k(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.n(DecodeJob.java:418)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.w.a(SourceGenerator.java:135)
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.b.d$a.a(ByteBufferFileLoader.java:74)
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.w.a(SourceGenerator.java:49)
        at com.bumptech.glide.load.engine.DecodeJob.k(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.i(DecodeJob.java:272)
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
        at java.lang.Thread.run(Thread.java:833)
        at com.bumptech.glide.load.engine.c.a$a$1.run(GlideExecutor.java:446)
     Caused by: java.lang.IllegalArgumentException: Problem decoding into existing bitmap
        at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:673)
        at com.bumptech.glide.load.resource.bitmap.k.b(Downsampler.java:583)
        at com.bumptech.glide.load.resource.bitmap.k.a(Downsampler.java:299) 
        at com.bumptech.glide.load.resource.bitmap.k.a(Downsampler.java:206) 
        at com.bumptech.glide.load.resource.bitmap.t.a(StreamBitmapDecoder.java:62) 
        at com.bumptech.glide.load.resource.bitmap.t.a(StreamBitmapDecoder.java:18) 
        at com.bumptech.glide.load.engine.g.a(DecodePath.java:72) 
        at com.bumptech.glide.load.engine.g.a(DecodePath.java:55) 
        at com.bumptech.glide.load.engine.g.a(DecodePath.java:45) 
        at com.bumptech.glide.load.engine.q.a(LoadPath.java:58) 
        at com.bumptech.glide.load.engine.q.a(LoadPath.java:43) 
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:507) 
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:472) 
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:458) 
        at com.bumptech.glide.load.engine.DecodeJob.n(DecodeJob.java:410) 
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:379) 
        at com.bumptech.glide.load.engine.w.a(SourceGenerator.java:135) 
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:95) 
        at com.bumptech.glide.load.b.f$c.a(FileLoader.java:76) 
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:75) 
        at com.bumptech.glide.load.engine.w.a(SourceGenerator.java:49) 
        at com.bumptech.glide.load.engine.DecodeJob.k(DecodeJob.java:302) 
        at com.bumptech.glide.load.engine.DecodeJob.n(DecodeJob.java:418) 
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:379) 
        at com.bumptech.glide.load.engine.w.a(SourceGenerator.java:135) 
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:95) 
        at com.bumptech.glide.load.b.d$a.a(ByteBufferFileLoader.java:74) 
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:75) 
        at com.bumptech.glide.load.engine.w.a(SourceGenerator.java:49) 
        at com.bumptech.glide.load.engine.DecodeJob.k(DecodeJob.java:302) 
        at com.bumptech.glide.load.engine.DecodeJob.i(DecodeJob.java:272) 
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233) 
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 
        at java.lang.Thread.run(Thread.java:833) 
        at com.bumptech.glide.load.engine.c.a$a$1.run(GlideExecutor.java:446) 
09-13 11:59:18.075 7814-7814/com.dubang.reader I/Glide: Root cause (4 of 4)
    com.bumptech.glide.load.resource.bitmap.RecyclableBufferedInputStream$InvalidMarkException: Mark has been invalidated, pos: 49152 markLimit: 65536
        at com.bumptech.glide.load.resource.bitmap.RecyclableBufferedInputStream.reset(RecyclableBufferedInputStream.java:354)
        at com.bumptech.glide.load.a.k.c(InputStreamRewinder.java:29)
        at com.bumptech.glide.load.a.k.a(InputStreamRewinder.java:14)
        at com.bumptech.glide.load.engine.g.a(DecodePath.java:69)
        at com.bumptech.glide.load.engine.g.a(DecodePath.java:55)
        at com.bumptech.glide.load.engine.g.a(DecodePath.java:45)
        at com.bumptech.glide.load.engine.q.a(LoadPath.java:58)
        at com.bumptech.glide.load.engine.q.a(LoadPath.java:43)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:507)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:472)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:458)
        at com.bumptech.glide.load.engine.DecodeJob.n(DecodeJob.java:410)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.w.a(SourceGenerator.java:135)
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.b.f$c.a(FileLoader.java:76)
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.w.a(SourceGenerator.java:49)
        at com.bumptech.glide.load.engine.DecodeJob.k(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.n(DecodeJob.java:418)
        at com.bumptech.glide.load.engine.DecodeJob.a(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.w.a(SourceGenerator.java:135)
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.b.d$a.a(ByteBufferFileLoader.java:74)
        at com.bumptech.glide.load.engine.b.a(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.w.a(SourceGenerator.java:49)
        at com.bumptech.glide.load.engine.DecodeJob.k(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.i(DecodeJob.java:272)
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
        at java.lang.Thread.run(Thread.java:833)
        at com.bumptech.glide.load.engine.c.a$a$1.run(GlideExecutor.java:446)
santrasanchita13 commented 6 years ago

API - 23 and below

I'm getting the same error for some Amazon aws files. Some files are loading properly but some aren't. I've tried trimming spaces but it still doesn't work. The images are downloading from the browser correctly.

LOGS:

W/Glide: Load failed for https://s3-sa-east-1.amazonaws.com/quemfazs3/4177f4d7-c272-46c0-ac1a-78be607b17d2/ads/4b6b30b7-88ed-46c7-8ab6-cfd4868ee9b7/medias/f20.jpg with size [192x144]
    class com.bumptech.glide.load.engine.GlideException: Failed to load resource
    There were 4 causes:
    java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
    java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
    java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
    java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
     call GlideException#logRootCauses(String) for more detail
      Cause (1 of 6): class com.bumptech.glide.load.engine.GlideException: Failed LoadPath{DirectByteBuffer->Object->Drawable}, DATA_DISK_CACHE, https://s3-sa-east-1.amazonaws.com/quemfazs3/4177f4d7-c272-46c0-ac1a-78be607b17d2/ads/4b6b30b7-88ed-46c7-8ab6-cfd4868ee9b7/medias/f20.jpg
        Cause (1 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{DirectByteBuffer->GifDrawable->Drawable}
        Cause (2 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{DirectByteBuffer->Bitmap->Drawable}
        Cause (3 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{DirectByteBuffer->BitmapDrawable->Drawable}
      Cause (2 of 6): class com.bumptech.glide.load.engine.GlideException: Failed LoadPath{FileInputStream->Object->Drawable}, DATA_DISK_CACHE, https://s3-sa-east-1.amazonaws.com/quemfazs3/4177f4d7-c272-46c0-ac1a-78be607b17d2/ads/4b6b30b7-88ed-46c7-8ab6-cfd4868ee9b7/medias/f20.jpg
        Cause (1 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{FileInputStream->GifDrawable->Drawable}
        Cause (2 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{FileInputStream->Bitmap->Drawable}
        Cause (3 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{FileInputStream->BitmapDrawable->Drawable}
      Cause (3 of 6): class com.bumptech.glide.load.engine.GlideException: Failed LoadPath{ParcelFileDescriptor->Object->Drawable}, DATA_DISK_CACHE, https://s3-sa-east-1.amazonaws.com/quemfazs3/4177f4d7-c272-46c0-ac1a-78be607b17d2/ads/4b6b30b7-88ed-46c7-8ab6-cfd4868ee9b7/medias/f20.jpg
    There were 2 causes:
    java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
    java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
     call GlideException#logRootCauses(String) for more detail
        Cause (1 of 2): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{ParcelFileDescriptor->Bitmap->Drawable}
    There was 1 cause:
    java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
     call GlideException#logRootCauses(String) for more detail
          Cause (1 of 1): class java.io.IOException: java.lang.RuntimeException: setDataSource failed: status = 0x80000000
        Cause (2 of 2): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{ParcelFileDescriptor->BitmapDrawable->Drawable}
    There was 1 cause:
    java.io.IOException(java.lang.RuntimeException: setDataSource failed: status = 0x80000000)
     call GlideException#logRootCauses(String) for more detail
          Cause (1 of 1): class java.io.IOException: java.lang.RuntimeException: setDataSource failed: status = 0x80000000
      Cause (4 of 6): class com.bumptech.glide.load.engine.GlideException: Failed LoadPath{DirectByteBuffer->Object->Drawable}, REMOTE, https://s3-sa-east-1.amazonaws.com/quemfazs3/4177f4d7-c272-46c0-ac1a-78be607b17d2/ads/4b6b30b7-88ed-46c7-8ab6-cfd4868ee9b7/medias/f20.jpg
        Cause (1 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{DirectByteBuffer->GifDrawable->Drawable}
        Cause (2 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{DirectByteBuffer->Bitmap->Drawable}
        Cause (3 of 3): class com.bumptech.glide.load.engine.GlideException: Failed DecodePath{DirectByteBuffer->Bi
09-14 11:46:08.819 24321-24321/com.faz.quem.quemfaz I/Glide: Root cause (1 of 4)
    java.io.IOException: java.lang.RuntimeException: setDataSource failed: status = 0x80000000
        at com.bumptech.glide.load.resource.bitmap.VideoDecoder.decode(VideoDecoder.java:173)
        at com.bumptech.glide.load.engine.DecodePath.decodeResourceWithList(DecodePath.java:72)
        at com.bumptech.glide.load.engine.DecodePath.decodeResource(DecodePath.java:55)
        at com.bumptech.glide.load.engine.DecodePath.decode(DecodePath.java:45)
        at com.bumptech.glide.load.engine.LoadPath.loadWithExceptionList(LoadPath.java:58)
        at com.bumptech.glide.load.engine.LoadPath.load(LoadPath.java:43)
        at com.bumptech.glide.load.engine.DecodeJob.runLoadPath(DecodeJob.java:507)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromFetcher(DecodeJob.java:472)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromData(DecodeJob.java:458)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:410)
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76)
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:418)
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76)
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:418)
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.model.ByteBufferFileLoader$ByteBufferFetcher.loadData(ByteBufferFileLoader.java:74)
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:269)
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
        at java.lang.Thread.run(Thread.java:818)
        at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)
     Caused by: java.lang.RuntimeException: setDataSource failed: status = 0x80000000
        at android.media.MediaMetadataRetriever.setDataSource(Native Method)
        at android.media.MediaMetadataRetriever.setDataSource(MediaMetadataRetriever.java:144)
        at com.bumptech.glide.load.resource.bitmap.VideoDecoder$ParcelFileDescriptorInitializer.initialize(VideoDecoder.java:296)
        at com.bumptech.glide.load.resource.bitmap.VideoDecoder$ParcelFileDescriptorInitializer.initialize(VideoDecoder.java:291)
        at com.bumptech.glide.load.resource.bitmap.VideoDecoder.decode(VideoDecoder.java:161)
        at com.bumptech.glide.load.engine.DecodePath.decodeResourceWithList(DecodePath.java:72) 
        at com.bumptech.glide.load.engine.DecodePath.decodeResource(DecodePath.java:55) 
        at com.bumptech.glide.load.engine.DecodePath.decode(DecodePath.java:45) 
        at com.bumptech.glide.load.engine.LoadPath.loadWithExceptionList(LoadPath.java:58) 
        at com.bumptech.glide.load.engine.LoadPath.load(LoadPath.java:43) 
        at com.bumptech.glide.load.engine.DecodeJob.runLoadPath(DecodeJob.java:507) 
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromFetcher(DecodeJob.java:472) 
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromData(DecodeJob.java:458) 
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:410) 
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379) 
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95) 
        at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76) 
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75) 
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302) 
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:418) 
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379) 
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95) 
        at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76) 
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75) 
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302) 
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:418) 
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379) 
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95) 
        at com.bumptech.glide.load.model.ByteBufferFileLoader$ByteBufferFetcher.loadData(ByteBufferFileLoader.java:74) 
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75) 
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302) 
        at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:269) 
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233) 
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 
        at java.lang.Thread.run(Thread.java:818) 
        at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446) 
09-14 11:46:08.820 24321-24321/com.faz.quem.quemfaz I/Glide: Root cause (2 of 4)
    java.io.IOException: java.lang.RuntimeException: setDataSource failed: status = 0x80000000
        at com.bumptech.glide.load.resource.bitmap.VideoDecoder.decode(VideoDecoder.java:173)
        at com.bumptech.glide.load.resource.bitmap.BitmapDrawableDecoder.decode(BitmapDrawableDecoder.java:58)
        at com.bumptech.glide.load.engine.DecodePath.decodeResourceWithList(DecodePath.java:72)
        at com.bumptech.glide.load.engine.DecodePath.decodeResource(DecodePath.java:55)
        at com.bumptech.glide.load.engine.DecodePath.decode(DecodePath.java:45)
        at com.bumptech.glide.load.engine.LoadPath.loadWithExceptionList(LoadPath.java:58)
        at com.bumptech.glide.load.engine.LoadPath.load(LoadPath.java:43)
        at com.bumptech.glide.load.engine.DecodeJob.runLoadPath(DecodeJob.java:507)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromFetcher(DecodeJob.java:472)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromData(DecodeJob.java:458)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:410)
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76)
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:418)
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76)
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:418)
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.model.ByteBufferFileLoader$ByteBufferFetcher.loadData(ByteBufferFileLoader.java:74)
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:269)
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
        at java.lang.Thread.run(Thread.java:818)
        at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)
     Caused by: java.lang.RuntimeException: setDataSource failed: status = 0x80000000
        at android.media.MediaMetadataRetriever.setDataSource(Native Method)
        at android.media.MediaMetadataRetriever.setDataSource(MediaMetadataRetriever.java:144)
        at com.bumptech.glide.load.resource.bitmap.VideoDecoder$ParcelFileDescriptorInitializer.initialize(VideoDecoder.java:296)
        at com.bumptech.glide.load.resource.bitmap.VideoDecoder$ParcelFileDescriptorInitializer.initialize(VideoDecoder.java:291)
        at com.bumptech.glide.load.resource.bitmap.VideoDecoder.decode(VideoDecoder.java:161)
        at com.bumptech.glide.load.resource.bitmap.BitmapDrawableDecoder.decode(BitmapDrawableDecoder.java:58) 
        at com.bumptech.glide.load.engine.DecodePath.decodeResourceWithList(DecodePath.java:72) 
        at com.bumptech.glide.load.engine.DecodePath.decodeResource(DecodePath.java:55) 
        at com.bumptech.glide.load.engine.DecodePath.decode(DecodePath.java:45) 
        at com.bumptech.glide.load.engine.LoadPath.loadWithExceptionList(LoadPath.java:58) 
        at com.bumptech.glide.load.engine.LoadPath.load(LoadPath.java:43) 
        at com.bumptech.glide.load.engine.DecodeJob.runLoadPath(DecodeJob.java:507) 
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromFetcher(DecodeJob.java:472) 
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromData(DecodeJob.java:458) 
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:410) 
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379) 
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95) 
        at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76) 
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75) 
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302) 
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:418) 
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379) 
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95) 
        at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76) 
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75) 
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302) 
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:418) 
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379) 
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95) 
        at com.bumptech.glide.load.model.ByteBufferFileLoader$ByteBufferFetcher.loadData(ByteBufferFileLoader.java:74) 
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75) 
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302) 
        at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:269) 
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233) 
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 
        at java.lang.Thread.run(Thread.java:818) 
        at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446) 
    Root cause (3 of 4)
    java.io.IOException: java.lang.RuntimeException: setDataSource failed: status = 0x80000000
        at com.bumptech.glide.load.resource.bitmap.VideoDecoder.decode(VideoDecoder.java:173)
        at com.bumptech.glide.load.engine.DecodePath.decodeResourceWithList(DecodePath.java:72)
        at com.bumptech.glide.load.engine.DecodePath.decodeResource(DecodePath.java:55)
        at com.bumptech.glide.load.engine.DecodePath.decode(DecodePath.java:45)
        at com.bumptech.glide.load.engine.LoadPath.loadWithExceptionList(LoadPath.java:58)
        at com.bumptech.glide.load.engine.LoadPath.load(LoadPath.java:43)
        at com.bumptech.glide.load.engine.DecodeJob.runLoadPath(DecodeJob.java:507)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromFetcher(DecodeJob.java:472)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromData(DecodeJob.java:458)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:410)
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.SourceGenerator.onDataFetcherReady(SourceGenerator.java:135)
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76)
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:49)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:418)
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.SourceGenerator.onDataFetcherReady(SourceGenerator.java:135)
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76)
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:49)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:418)
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.SourceGenerator.onDataFetcherReady(SourceGenerator.java:135)
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.model.ByteBufferFileLoader$ByteBufferFetcher.loadData(ByteBufferFileLoader.java:74)
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:49)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:272)
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
        at java.lang.Thread.run(Thread.java:818)
        at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)
     Caused by: java.lang.RuntimeException: setDataSource failed: status = 0x80000000
        at android.media.MediaMetadataRetriever.setDataSource(Native Method)
        at android.media.MediaMetadataRetriever.setDataSource(MediaMetadataRetriever.java:144)
        at com.bumptech.glide.load.resource.bitmap.VideoDecoder$ParcelFileDescriptorInitializer.initialize(VideoDecoder.java:296)
        at com.bumptech.glide.load.resource.bitmap.VideoDecoder$ParcelFileDescriptorInitializer.initialize(VideoDecoder.java:291)
        at com.bumptech.glide.load.resource.bitmap.VideoDecoder.decode(VideoDecoder.java:161)
        at com.bumptech.glide.load.engine.DecodePath.decodeResourceWithList(DecodePath.java:72) 
        at com.bumptech.glide.load.engine.DecodePath.decodeResource(DecodePath.java:55) 
        at com.bumptech.glide.load.engine.DecodePath.decode(DecodePath.java:45) 
        at com.bumptech.glide.load.engine.LoadPath.loadWithExceptionList(LoadPath.java:58) 
        at com.bumptech.glide.load.engine.LoadPath.load(LoadPath.java:43) 
        at com.bumptech.glide.load.engine.DecodeJob.runLoadPath(DecodeJob.java:507) 
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromFetcher(DecodeJob.java:472) 
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromData(DecodeJob.java:458) 
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:410) 
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379) 
        at com.bumptech.glide.load.engine.SourceGenerator.onDataFetcherReady(SourceGenerator.java:135) 
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95) 
        at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76) 
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75) 
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:49) 
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302) 
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:418) 
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379) 
        at com.bumptech.glide.load.engine.SourceGenerator.onDataFetcherReady(SourceGenerator.java:135) 
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95) 
        at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76) 
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75) 
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:49) 
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302) 
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:418) 
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379) 
        at com.bumptech.glide.load.engine.SourceGenerator.onDataFetcherReady(SourceGenerator.java:135) 
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95) 
        at com.bumptech.glide.load.model.ByteBufferFileLoader$ByteBufferFetcher.loadData(ByteBufferFileLoader.java:74) 
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75) 
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:49) 
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302) 
        at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:272) 
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233) 
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 
        at java.lang.Thread.run(Thread.java:818) 
        at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446) 
    Root cause (4 of 4)
    java.io.IOException: java.lang.RuntimeException: setDataSource failed: status = 0x80000000
        at com.bumptech.glide.load.resource.bitmap.VideoDecoder.decode(VideoDecoder.java:173)
        at com.bumptech.glide.load.resource.bitmap.BitmapDrawableDecoder.decode(BitmapDrawableDecoder.java:58)
        at com.bumptech.glide.load.engine.DecodePath.decodeResourceWithList(DecodePath.java:72)
        at com.bumptech.glide.load.engine.DecodePath.decodeResource(DecodePath.java:55)
        at com.bumptech.glide.load.engine.DecodePath.decode(DecodePath.java:45)
        at com.bumptech.glide.load.engine.LoadPath.loadWithExceptionList(LoadPath.java:58)
        at com.bumptech.glide.load.engine.LoadPath.load(LoadPath.java:43)
        at com.bumptech.glide.load.engine.DecodeJob.runLoadPath(DecodeJob.java:507)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromFetcher(DecodeJob.java:472)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromData(DecodeJob.java:458)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:410)
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.SourceGenerator.onDataFetcherReady(SourceGenerator.java:135)
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76)
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:49)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:418)
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.SourceGenerator.onDataFetcherReady(SourceGenerator.java:135)
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.model.FileLoader$FileFetcher.loadData(FileLoader.java:76)
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:49)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:418)
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:379)
        at com.bumptech.glide.load.engine.SourceGenerator.onDataFetcherReady(SourceGenerator.java:135)
        at com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(DataCacheGenerator.java:95)
        at com.bumptech.glide.load.model.ByteBufferFileLoader$ByteBufferFetcher.loadData(ByteBufferFileLoader.java:74)
        at com.bumptech.glide.load.engine.DataCacheGenerator.startNext(DataCacheGenerator.java:75)
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:49)
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:302)
        at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:272)
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:233)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
        at java.lang.Thread.run(Thread.java:818)
        at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)
     Caused by: java.lang.RuntimeException: setDataSource failed: status = 0x80000000
        at android.media.MediaMetadataRetriever.setDataSource(Native Method)
        at android.media.MediaMetadataRetriever.setDataSource(MediaMetadataRetriever.java:144)
        at com.bumptech.glide.load.resource.bitmap.VideoDecoder$ParcelFileDescriptorInitializer.initialize(VideoDecoder.java:296)
        at com.bumptech.glide.load.resource.bitmap.VideoDecoder$ParcelFileDescriptorInitializer.initialize(VideoDecoder.java:291)
        at com.bumptech.glide.load.resource.bi