我使用php-zip(http://php.net/manual/en/book.zip.php),尤其是ZipArchive :: setArchiveComment来添加注释到我的apk文件(因为apk文件是zip存档),然后才使用以下内容下载它们: / p>
$zip = new ZipArchive();
$res = $zip->open($myfile, ZipArchive::CREATE);
if ($res === TRUE) {
$zip->setArchiveComment("my comment here");
$zip->close();
,但是事实证明这不是一个好主意,因为它以某种方式破坏了签名。这是不正常的行为,因为我在计算机上使用WinRar测试了添加注释,并且签名完全没有中断,因此我怀疑在php打开然后关闭zip文件以添加注释时发生了某些情况,可能导致zipalign问题。
我正在寻找一种将注释插入zip文件中的替代方法,因为上述方法对我的需求而言并不理想。我知道有一种方法可以在添加注释后对文件进行zipalign,但是与其将额外的工作量添加到我的机器上只是为了解决由以前的功能引起的问题,不如解决这个问题的根源是更明智的选择。似乎与php的$ zip扩展名有关,所以我想知道是否有类似的方法可以向存档添加注释,希望可以满足我的需求。
我知道Exif Tool确实可以解决许多文件类型的问题,但不幸的是zip并不是其中一种,否则它会是一个完美的解决方案,因为我也可以将注释嵌入到zip文件中,我可以通过某种方式尽快访问它。
我也考虑过将二进制数据添加到zip文件中,但是我无法继续进行下去,因为我认为我的apk文件将被多次下载,并且由于我不想每次都生成一个临时文件,因此该文件会继续增加规模。另外,我不知道确切地将二进制数据放在哪里,以免损坏存档。
因此,总而言之,我正在寻找一种将字符串嵌入到zip文件中的方法(像我这样的注释会很好,因为它与使用$ zip有所不同,因为它具有奇怪的行为,但是其他方式也非常欢迎),并且要求不会造成zipalign / signature /文件损坏问题。