欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

Glide处理加密图片

时间:2023-06-12

Glide 处理网络流 -> 文件的类是 StreamEncoder,处理缓存文件读取的是ByteBufferFileLoader。Url 图片会走 网络流 -> 文件缓存 (Encoder)-> 读取缓存(FileLoader)的流程。

如果要保持本地为加密模式,只在读取时解密,在registerComponents中注册:

registry.replace(File.class, ByteBuffer.class, new EncryptFileLoader.Factory(glide.getArrayPool()));

EncryptFileLoader 参照 ByteBufferFileLoader,在loadData中解密ByteBufer

如果要先解密网络流在保存缓存,在registerComponents中注册:

registry.append(InputStream.class, new EncryptStreamEncoder(glide.getArrayPool()));

EncryptStreamEncoder 参照StreamEncoder,在encode 中解密网络流并保存到文件。

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。