brotli jar
时间: 2023-10-04 10:12:09 浏览: 65
Brotli是一种由Google推出的无损压缩算法,它通过变种的LZ77算法、Huffman编码等方式来进行数据压缩。相比于其他压缩算法(如zip、gzip等),Brotli在压缩时间和压缩体积上都具有更高的效率。它支持压缩单个文件,可压缩的文件类型包括text/xml、text/plain、text/css、text/javascript、application/javascript、application/x-javascript、application/rss+xml、application/json、application/xml、image/tiff、image/svg+xml。此外,Brotli还支持压缩文件夹,可与tar结合使用。
在web和iOS端,浏览器和系统层已经开始支持自动解压Brotli数据,但Android系统需要在应用层自己实现解析。可以使用OkHttp的BrotliInterceptor拦截器来实现Brotli解压功能。首先,在请求头中添加Content-Encoding: br,然后在OkHttp请求中添加拦截器com.squareup.okhttp3:okhttp-brotli:4.1.0,并添加依赖org.brotli:dec:0.1.2来实现拦截器。通过这些步骤,就可以在Android应用中使用Brotli压缩算法。
Brotli压缩算法相对于gzip来说,压缩率更高,落地成本更低。虽然Brotli相对于gzip会消耗更多的CPU和内存资源,但在可接受范围内。具体的Brotli使用细节可以参考https://juejin.cn/post/7194627379656917047。