最近有网友问我怎么加载https图片,说是从网上找了很多办法都没成功,然后我就问他用的是什么图片加载工具,回答是glide,然后我自己也去网上找了一下,千篇一律的都说是结合okhttp来使用,修改okhttp的三个类,忽略认证,结果是没成功,还是加载不了https图片;还有一个最多的就是换图片加载工具:“UniversalImageLoader”,具体用法就自己看,这个图片加载已经不在主流里面了,但是也能用,主流的图片加载框架看我这篇文章: Android万能的图片加载框架(Glide、Fresco、Picasso).最后的问题是我不想换图片加载工具怎么办?我就要用glide,下面我们来看看怎么使用glide来加载https的图片网址。
网址如下:
① https://ad.12306.cn/res/delivery/0001/2017/08/31/201708311634229711.jpg
② https://ad.12306.cn/res/delivery/0002/2017/09/04/201709041647021598.jpg
③ https://www.guizhou12320.org.cn/filebase/hospital_img/429450012.jpg
④ https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/bd_logo1_31bdc765.png
或者自己去12306和其他的网站上找。
接下来我们用glide来加载一下上面的https图片网址。
当然我们从最基本的用法开始,用这段代码来加载第一个网址:
Glide.with(this)
.load("https://ad.12306.cn/res/delivery/0001/2017/08/31/201708311634229711.jpg")
.into(imageView);
然后神情愕然,图片就这样加载出来了?不应该很复杂的吗?你没看错,就这样出来了,赶紧试试吧!
然后我又试了试第二个网址:
Glide.with(this
.load("https://ad.12306.cn/res/delivery/0002/2017/09/04/201709041647021598.jpg ")
.into(imageView);
还是这段代码,两个图片网址如此类似,不出意外的话,也能出来,可是意外还是出来,图片没加载出来,想不通,真的想不通,吓得我赶紧寻找其他的解决办法:
String url = "https://ad.12306.cn/res/delivery/0002/2017/09/04/201709041647021598.jpg";
Glide.with(this)
.load(url)
.placeholder(R.drawable.ic_launcher)
.priority(Priority.LOW)
.error(R.drawable.ic_launcher)
// .override(width: 800, height: 400)
.into(imageView);
对的,你没看错,图片有加载出来了,我赶紧再次换第三个https图片网址试试,还是没问题,就这样解决了glide加载https图片网址的问题?不行,我还得在找一个试试,再次加载第四个网址,very good,还是没问题。
然后又试了试还有没有其他的方法,又找到一个,如下代码也可行:
Uri uri = Uri.parse("https://www.guizhou12320.org.cn/filebase/hospital_img/429450012.jpg");
Glide.with(this)
.load(uri)
.placeholder(R.drawable.ic_launcher)
.error(R.drawable.ic_launcher)
.into(imageView);
最后又封装了一个glide的jar,加载任何图片或者gif图片,都只需用glide.with(this).load(“图片网址”).into(imageview);就行。这里附上我收集的一些项目开发中常用的工具类和优秀的第三方库,都放在了我的github上面,地址如下:史上最全开发工具类 ,对你有用的话就给个star吧!
最后附上封装的glide的jar包下载地址:
http://download.csdn.net/download/u014727709/9970335
转载自:
http://blog.csdn.net/u014727709/article/details/77896286
欢迎start,欢迎评论,欢迎指正