Zipalign化 -- 如何让Android应用程序更有效率的执行

原文链接:http://docs.eoeandroid.com/tools/help/zipalign.html

zipalign是一个资源管理工具,它可以使得apk文件得到重要的优化。它的目的是为了使未压缩的数据相对文件起始处有一个固定的位移。它使得apk中所有未压缩的数据均按照4字节对齐。这使得我们可以使用mmap()直接访问各个部分,而不管二进制数据的相关限制。它的一大好处就是可以减少程序运行时的内存消耗。

在把你的apk文件分发出去之前,你应该用zipalign整理你的apk文件。Android构建工具会帮你做到这一点。当你使用装有ADT插件的Eclipse的时候,Export Wizard会在用你的私钥签名之后自动的帮你整理你的apk文件。当你使用Ant编译时,构建脚本也会自动帮你整理apk文件,只要你提供了你的keystore路径以及密钥证书,构建工具会先进行签名操作。

注:你应该在签名之后再进行对齐操作,否则,签名可能导致一部分内容未对齐。同时,也不要修改已经签名过的文件。更改相关的资源文件,会打乱已经对齐的文件,新添加的资源文件也不会对齐。

对齐是通过调整Local File Header中"extra"域的大小来实现的,对齐过程中域中的已有数据也有可能被改变。

有关如何使用zipalign的更多信息,请参加Your Application.

* 用法*

对齐infile.apk并保存为outfile.apk:

zipalign [-f] [-v] infile.apk outfile.apk

确认existing.apk文件对齐:

zipalign -c -v existing.apk

指明了按几字节对齐,一般应该为4,否则将不起作用。
标志:
* -f : 覆盖已存在的outfile.zip
* -v : 详细输出
* -c : 验证现有文件是否对齐

你可能感兴趣的:(Zipalign化 -- 如何让Android应用程序更有效率的执行)