You should implement this support yourself (BaseImageDownloader.getStreamFromOth
3156 ワード
今日はローカル画像リソースのUriを利用してImageLoaderで画像をロードしたいと思います
その結果、このようなエラーが発生しました.
You should implement this support yourself (BaseImageDownloader.getStreamFromOtherSource(...))
いくつかのブログの指摘を経て、私はまとめました.
パスによって方法が異なり、assetsであればパスの前に「assets://」を付ける
次の場合もあります.
例:
Androidは、SDカード指定フォルダの画像Uriを取得する方法:
String a="file://"+Environment.getExternalStorageDirectory().getPath()+"/DCIM/Camera/";
その結果、このようなエラーが発生しました.
You should implement this support yourself (BaseImageDownloader.getStreamFromOtherSource(...))
09-29 20:11:36.653 27465-27684/com.deltalab.urecommend E/ImageLoader: UIL doesn't support scheme(protocol) by default [/storage/sdcard/female.jpg]. You should implement this support yourself (BaseImageDownloader.getStreamFromOtherSource(...))
java.lang.UnsupportedOperationException: UIL doesn't support scheme(protocol) by default [/storage/sdcard/female.jpg]. You should implement this support yourself (BaseImageDownloader.getStreamFromOtherSource(...))
at com.nostra13.universalimageloader.core.download.BaseImageDownloader.getStreamFromOtherSource(BaseImageDownloader.java:280)
at com.nostra13.universalimageloader.core.download.BaseImageDownloader.getStream(BaseImageDownloader.java:99)
at com.nostra13.universalimageloader.core.LoadAndDisplayImageTask.downloadImage(LoadAndDisplayImageTask.java:291)
at com.nostra13.universalimageloader.core.LoadAndDisplayImageTask.tryCacheImageOnDisk(LoadAndDisplayImageTask.java:274)
at com.nostra13.universalimageloader.core.LoadAndDisplayImageTask.tryLoadBitmap(LoadAndDisplayImageTask.java:230)
at com.nostra13.universalimageloader.core.LoadAndDisplayImageTask.run(LoadAndDisplayImageTask.java:136)
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)
いくつかのブログの指摘を経て、私はまとめました.
パスによって方法が異なり、assetsであればパスの前に「assets://」を付ける
次の場合もあります.
String imageUri = "http://site.com/image.png"; // from Web
String imageUri = "file:///mnt/sdcard/image.png"; // from SD card
String imageUri = "content://media/external/audio/albumart/13"; // from content provider
String imageUri = "assets://image.png"; // from assets
String imageUri = "drawable://" + R.drawable.image; // from drawables (only images, non-9patch)
例:
Androidは、SDカード指定フォルダの画像Uriを取得する方法:
String a="file://"+Environment.getExternalStorageDirectory().getPath()+"/DCIM/Camera/";