
修改META-INF目录下的文件,不用重新签名。
需求:
突然收到老大的需求,要对产品进行一次推荐好友安装的活动,每个会员下载自己的专属安装包(里面记录会员的相关信息)。
思路:
经过了解,发现apk安装包原来只是zip的一个马甲,使用php的ZipArchive类可以对文件进行操作。
实现代码:
$apk = "gb.apk";
$file = tempnam("tmp", "zip");
if(false===file_put_contents($file, file_get_contents($apk))){
exit('copy faild!');
}
$zip = new ZipArchive();
$zip->open($file);
//只能放在META-INF 目录下,否则需要重新签名。
$zip->addFromString('META-INF/extends.json', json_encode(array('author'=>'deeka')));
$zip->close();
header("Content-Type: application/zip");
header("Content-Length: " . filesize($file));
header("Content-Disposition: attachment; filename=\"{$apk}\"");
readfile($file);
unlink($file);
「GetParty」
关注微信号,推送好文章
微信中长按图片即可关注