You should implement this support yourself (BaseImageDownloader.getStreamFromOth

今天想利用本地图片资源的Uri来使用ImageLoader加载图片

结果报了这么一个错误:

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/";

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值