2020版本AssetBundle的結(jié)構(gòu)分析
ab包主要分為三個部分(大端):
1.包頭
2.塊信息以及文件信息
3.二進制數(shù)據(jù)流

1.包頭(只列舉最普通的包)
+?signature
+?version
+?version_playing
+?version_engine
+?file_size(8)
+ meta_compress_size(4)
+ meta_uncompress_size(4)
+ meta_compress_flag(4)
+?align(16)

2.塊信息以及文件信息(meta)
+ hash(16)
+ block_count(4)
[
? ? +?data_uncompress_size(4)
? ? +?data_compress_size(4)
? ? + data_compress_flag(2)
]
+ file_count(4)
[
? ? + offset(8)
? ? + file_size(8)
? ? + file_type(4)
? ? + file_name(?)
]

3.二進制數(shù)據(jù)流
+ data(data_compress_size總和)

根據(jù)?meta_compress_flag & ?0x80 == 0(未壓縮)
未壓縮:1-2-3
壓縮:1-3-2
標(biāo)簽: