1

Android アプリで Android Universal Image Loading を使用して、インターネットから画像を読み込みます。outOfMemory エラーは発生せず、完璧に動作します。しかし、デバイス内のローカルの既存の画像(/data/data/package-name/cache/...などのキャッシュディレクトリ)で使用しようとしましたが、成功せずにfile://と画像のリンクを使用しましたが、画像をロードする場合とロードしない場合があるため、何か問題があるようです。ImageDownloaderを拡張して独自のローカルを作成しようとしましたImageDownloaderが、どちらも機能しませんでした。明確にするために: これはパーミッションの問題ではなく、パスの問題でもありません! 画像は物理的にキャッシュ ディレクトリに存在します。

logcat にあるエラーは次のとおりです。

05-13 11:41:10.605: W/System.err(28789): java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
05-13 11:41:10.605: W/System.err(28789):    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
05-13 11:41:10.613: W/System.err(28789):    at java.lang.Thread.run(Thread.java:856)
05-13 11:41:10.613: W/System.err(28789): Caused by: libcore.io.ErrnoException: open failed: ENOENT (No such file or directory)
05-13 11:41:10.613: W/System.err(28789):    at libcore.io.Posix.open(Native Method)
05-13 11:41:10.613: W/System.err(28789):    at libcore.io.BlockGuardOs.open(BlockGuardOs.java:110)
05-13 11:41:10.613: W/System.err(28789):    at libcore.io.IoBridge.open(IoBridge.java:400)
05-13 11:41:10.613: W/System.err(28789):    ... 10 more
05-13 11:41:10.613: W/System.err(28789): java.io.FileNotFoundException: /file:/storage/sdcard0/Android/data/com.paperpad.grainedor.appservices/cache/-977741495: open failed: ENOENT (No such file or directory)
05-13 11:41:10.621: W/System.err(28789):    at libcore.io.IoBridge.open(IoBridge.java:416)
05-13 11:41:10.621: W/System.err(28789):    at java.io.FileInputStream.<init>(FileInputStream.java:78)
05-13 11:41:10.621: W/System.err(28789):    at com.paperpad.grainedor.appservices.activities.LocalImageDownloader.getStream(LocalImageDownloader.java:28)
05-13 11:41:10.621: W/System.err(28789):    at com.nostra13.universalimageloader.core.decode.BaseImageDecoder.getImageStream(BaseImageDecoder.java:84)
05-13 11:41:10.621: W/System.err(28789):    at com.nostra13.universalimageloader.core.decode.BaseImageDecoder.decode(BaseImageDecoder.java:73)
05-13 11:41:10.621: W/System.err(28789):    at com.nostra13.universalimageloader.core.LoadAndDisplayImageTask.decodeImage(LoadAndDisplayImageTask.java:290)
05-13 11:41:10.629: W/System.err(28789):    at com.nostra13.universalimageloader.core.LoadAndDisplayImageTask.tryLoadBitmap(LoadAndDisplayImageTask.java:250)
05-13 11:41:10.629: W/System.err(28789):    at com.nostra13.universalimageloader.core.LoadAndDisplayImageTask.run(LoadAndDisplayImageTask.java:131)
05-13 11:41:10.629: W/System.err(28789):    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
05-13 11:41:10.629: W/System.err(28789):    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
05-13 11:41:10.629: W/System.err(28789):    at java.lang.Thread.run(Thread.java:856)
05-13 11:41:10.629: W/System.err(28789): Caused by: libcore.io.ErrnoException: open failed: ENOENT (No such file or directory)
05-13 11:41:10.629: W/System.err(28789):    at libcore.io.Posix.open(Native Method)
05-13 11:41:10.629: W/System.err(28789):    at libcore.io.BlockGuardOs.open(BlockGuardOs.java:110)
05-13 11:41:10.629: W/System.err(28789):    at libcore.io.IoBridge.open(IoBridge.java:400)
05-13 11:41:10.629: W/System.err(28789):    ... 10 more
05-13 11:41:10.629: E/ImageLoader(28789): Image can't be decoded [/data/data/com.paperpad.grainedor.appservices/cache/medias/6/optimized/Sales_individuels_2.jpg_1280x752]

これに関するコメントは/storage/sdcard0/Android/、私のコードのどこからともなく追加されたものです!

4

0 に答える 0