关于Glide加载https协议图片时3.x和4.x版本处理

        大家都知道Glide版本3.x和4.x在用法上差的是比较多的,由于有些项目是3.x的版本,而新开发的可能使用的又是最新4.x的版本。所以目前还是会出现双版本作战,最近遇到加载https图片的问题,增对不同版本的处理做下分享。

第一:4.x版本加载https协议的图片

1, 在module的gradle中配置依赖


依赖配置

2,重写AppGlideModule,增加注解,关键部分已标注,如下:


AppGlideModule

3,编写第二步中的UnsafeOkHttpClient.getUnsafeOkHttpClient()方法,这里是处理https协议的关键部分,具体代码如下:


1-3-1


1-3-2

上述中比较容易忽略的地方,已作了标记

5,在app中需要的地方使用


两种方式都可以,区别再宇第一种拥有你自定义的功能

上述三步在4.x的版本中已经可以处理https协议的图片显示

第二:3.x版本加载https协议的图片

一共需要一下三个类:OkHttpUrlLoader,OkHttpStreamFetcher和UnsafeOkHttpClient,其中最后一个和上面一样,其余两个其实就是对4.x里源码的适当参考

1,OkHttpUrlLoader内容如下,关键点已标出:

2-1-1
2-1-2


2-1-3

2,OkHttpStreamFetcher内容如下:


2-2-1


2-2-2

3,实现GlideModule,样例如下:


4,在AndroidMenifest.xml文件的application节点内配置<meta-data>子节点,如下:


4,在使用的地方

和普通一样使用,可参考上述3.x的最后使用


至此,已经总结完3.x和4.x的glide显示https协议图片的操作方法,项目中实战,亲测有效

上一篇:关于在AS/IDEA或者同类工具种使用svn

下一篇:微信小程序-自定义组件