You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
GlideCompose can not load "android.resource://..." resources. To being specific I want to show users installed apps icons in my app that is in this format "android.resource://package_name/id_number" (ex: for youtube android.resource://com.google.android.youtube/2131820554). Usual Glide for android views(Glide.load(...).into(imageView)) works and shows this images but GlideCompose throws an exception that I wrote.
Glide Version: 4.14.2, but tested with 5rc2 too Glide Compose Version: 1.0.0-alpha.3 but tested with beta01 too
Integration libraries: no
Device/Android Version: android 9, 13 and 14
Issue details / Repro steps / Use case background:
Just get other apps uri with this code:
val packageInfo = context.packageManager.getPackageInfo(packageName, 0)
val appUri = "android.resource://$packageName/${packageInfo.applicationInfo.icon}"
GlideImage(appUri, ...)
We have just a simple GlideModule that sets RequestOptions.format and RequestOptions.diskCacheStrategy based on device specifications. Anyway this GlideModule was present when using glide with imageView(android views) and that was working.
Rootcause(1of2)java.io.FileNotFoundException: Resourcedoes not exist: android.resource://com.google.android.youtube/2131820559atandroid.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1850)atandroid.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1773)atcom.bumptech.glide.load.data.FileDescriptorLocalUriFetcher.loadResource(FileDescriptorLocalUriFetcher.java:20)atcom.bumptech.glide.load.data.FileDescriptorLocalUriFetcher.loadResource(FileDescriptorLocalUriFetcher.java:12)atcom.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:44)atcom.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)atcom.bumptech.glide.load.engine.SourceGenerator.startNextLoad(SourceGenerator.java:95)atcom.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:88)atcom.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:311)atcom.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:442)atcom.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:399)atcom.bumptech.glide.load.engine.SourceGenerator.onDataReadyInternal(SourceGenerator.java:211)atcom.bumptech.glide.load.engine.SourceGenerator$1.onDataReady(SourceGenerator.java:101)atcom.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onDataReady(MultiModelLoader.java:145)atcom.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:45)atcom.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)atcom.bumptech.glide.load.engine.SourceGenerator.startNextLoad(SourceGenerator.java:95)atcom.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:88)atcom.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:311)atcom.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:280)atcom.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:235)atjava.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)atjava.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)atcom.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:424)atjava.lang.Thread.run(Thread.java:1012)atcom.bumptech.glide.load.engine.executor.GlideExecutor$DefaultPriorityThreadFactory$1.run(GlideExecutor.java:383)2024-06-2410:50:50.8964200-4507Glidecom.farsitel.bazaarIRootcause(2of2)java.io.FileNotFoundException: Resourcedoes not exist: android.resource://com.google.android.youtube/2131820559atandroid.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1850)atandroid.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1773)atcom.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:20)atcom.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:11)atcom.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:44)atcom.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)atcom.bumptech.glide.load.engine.SourceGenerator.startNextLoad(SourceGenerator.java:95)atcom.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:88)atcom.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:311)atcom.bumptech.glide.load.engine.DecodeJob.onDataFetcherFailed(DecodeJob.java:416)atcom.bumptech.glide.load.engine.SourceGenerator.onLoadFailedInternal(SourceGenerator.java:223)atcom.bumptech.glide.load.engine.SourceGenerator$1.onLoadFailed(SourceGenerator.java:108)atcom.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:167)atcom.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:154)atcom.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:50)atcom.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)atcom.bumptech.glide.load.engine.SourceGenerator.startNextLoad(SourceGenerator.java:95)atcom.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:88)atcom.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:311)atcom.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData(DecodeJob.java:442)atcom.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(DecodeJob.java:399)atcom.bumptech.glide.load.engine.SourceGenerator.onDataReadyInternal(SourceGenerator.java:211)atcom.bumptech.glide.load.engine.SourceGenerator$1.onDataReady(SourceGenerator.java:101)atcom.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onDataReady(MultiModelLoader.java:145)atcom.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:45)atcom.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)atcom.bumptech.glide.load.engine.SourceGenerator.startNextLoad(SourceGenerator.java:95)atcom.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:88)atcom.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:311)atcom.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:280)atcom.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:235)atjava.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)atjava.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)atcom.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:424)atjava.lang.Thread.run(Thread.java:1012)atcom.bumptech.glide.load.engine.executor.GlideExecutor$DefaultPriorityThreadFactory$1.run(GlideExecutor.java:383)
The text was updated successfully, but these errors were encountered:
GlideCompose can not load "android.resource://..." resources. To being specific I want to show users installed apps icons in my app that is in this format "android.resource://package_name/id_number" (ex: for youtube android.resource://com.google.android.youtube/2131820554). Usual Glide for android views(Glide.load(...).into(imageView)) works and shows this images but GlideCompose throws an exception that I wrote.
Glide Version: 4.14.2, but tested with 5rc2 too
Glide Compose Version: 1.0.0-alpha.3 but tested with beta01 too
Integration libraries: no
Device/Android Version: android 9, 13 and 14
Issue details / Repro steps / Use case background:
Just get other apps uri with this code:
We have just a simple GlideModule that sets RequestOptions.format and RequestOptions.diskCacheStrategy based on device specifications. Anyway this GlideModule was present when using glide with imageView(android views) and that was working.
Layout Compose:
Stack trace / LogCat:
The text was updated successfully, but these errors were encountered: