我正在尝试解析resources.arsc文件中包含的资源,如本问题中所述.我知道该androidmanifest.xml文件标识了.arsc文件中的资源.我已成功设法解析.arsc文件的标题,我无法弄清楚如何自己解析资源.
有人可以帮我弄清楚如何解析.arsc文件中包含的资源吗?
到目前为止我的解析代码:
<?php
$doc = fopen('resources.arsc', 'r+');
for($i=1;$i<10;$i++){
$res[$i] = _unpack('V', fread($doc, 4));
}
for ($i = 0, $j = $res[6]; $i <= $j; $i++) {
$word = fread($doc, 4);
$stroffs[] = _unpack('V', $word);
}
$strings = array();
$curroffs = 0;
foreach($stroffs as $offs){
//read length
$len = _unpack('v', fread($doc, 2));
//read string
if($len>0){
$str = fread($doc, $len*2);
}else{
$str = '';
}
//null
$wd = fread($doc, 2);
//utf-16le
$strings[] = mb_convert_encoding($str, 'gbk', 'UTF-16LE');
//curr …Run Code Online (Sandbox Code Playgroud)