問題の説明:
最近、Android10でアルバムにアクセスしたときに、EACCES(許可が拒否されました)を報告し続けました。
java.io.FileNotFoundException:オープンに失敗しました:
android.os.ParcelFileDescriptor.openInternal(ParcelFileDescriptor.java:315)のEACCES(アクセスが拒否されました)
android.os.ParcelFileDescriptor.open(ParcelFileDescriptor.java:220)の
android.content.ContentResolver .openAssetFileDescriptor(ContentResolver.java:1509)
at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1431)
at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:22)
atcom。 glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:13)
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 )
com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:49)
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.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 )
com.bumptech.glide.load.model.MultiModelLoader $ MultiFetcher.onLoadFailed(MultiModelLoader.java:144)
at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:49)
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.processTask(ThreadPoolExecutor.java:1187)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1152)
at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:929 )
com.bumptech.glide.load.engine.executor.GlideExecutor $ DefaultThreadFactory $ 1.run(GlideExecutor.java:446)
解決:
マニフェストアプリケーションに android:requestLegacyExternalStorage = "true"を追加すると、 Android Qはデフォルトでサンドボックスモードをオンにし、ファイルの読み取りと書き込みが失敗します