APK压缩级别,减小文件大小

5

由于APK文件只是一个具有不同扩展名和一些元数据参数的Zip文件,因此似乎有一种方法可以更改文件的压缩级别。

为了验证Eclipse是否使用最高压缩级别进行导出,我尝试使用winrar将APK文件内容打包,并将压缩级别设置为“”,结果减少了20%,约为1 MB。

我无法找到任何安全重打包APK文件而不删除元数据的简单方法。我已经尝试过7zip、aapt和apktool。


那个减小了大小的 APK 安装成功了吗?如果是这样,Android 包管理器确实支持更高的压缩级别。 - ankitjaininfo
我成功安装了它,但我不太确定元数据是否已保存,也不知道这会产生什么影响。 - Kirill Kulakov
1个回答

3
您可以使用以下Ant任务重新打包APK:
<target name="-post-package">
<exec executable="${z7zip}">
  <arg value="x"/>
  <arg value="-o${out.dir}/TempApk"/>
  <arg value="${out.packaged.file}"/>
</exec>
<delete file="${out.packaged.file}" verbose="${verbose}"/>
<exec executable="${z7zip}" dir="${out.dir}/TempApk">
  <arg value="a"/>
  <arg value="-tzip"/>
  <arg value="-mx9"/>
  <arg value="-r"/>
  <arg value="${out.packaged.file}"/>
  <arg value="*.*"/>
</exec>
<delete dir="${out.dir}/TempApk" verbose="${verbose}" />

它使用7zip。7zip的路径应该在local.properties文件中:
z7zip=C:\\Program Files\\7-Zip\\7z.exe

它可以提供大约15%的更好压缩率。当然你也可以使用其他工具或手动执行这些命令行来重新打包你的apk文件。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接