无损压缩bugly所产生的符号表
bugly的符号表分为2种,一种是可读符号表
,另一种是不可读符号表
。其中不可读符号表在2019年1月22日以后默认生成的都是不可读符号表。如果想要生成可读符号表可以指定参数为-symbol。具体buglySymboliOS.jar
是如何将DWARF格式转为符号字符串的没有做深究,猜测是通过解析DWARF格式文件提取数据的。可读符号表和不可读符号表经过观察得知,两者在所占空间体积上没有显著差异。本方案针对可读符号表
进行压缩。
使用前需要确保安装Python3 准备好bugly的可读符号表:xxxx.symbol.zip。bugly的可读符号表生成方式见官网:https://bugly.qq.com/v2/downloads
python3 compressed.py -i <bugly符号表的zip包> -o <压缩后的输出路径>
恢复:
python3 decompress.py -i <经过上步压缩的zip路径> -o <输出路径>
在数据量较大的情况下,zip体积能压缩40%。从一定程度上可以减少对存储空间和数据传输的依赖。
优化前 | 优化后 |
---|---|
52.7MB | 31.2MB |