android - Android构建过程中的优化有详细的描述吗?

标签 android build-process

我一直很好奇构建 .apk 的所有优化。我很好奇,因为我过去曾尝试过两件事来减小我的 .apk 的大小:

  1. 我之前在项目中有过几个大的json资源,还有一个静态sqlite数据库。我尝试在构建过程之前通过 gzip 压缩 apk 来减小 apk 的大小,但结果大小完全相同。

  2. 我今天刚刚在我的/drawable/文件夹上尝试了 pngcrush。生成的构建与之前的大小完全相同。

我认为也许 #1 可以通过压缩过程来解释,但简单地压缩 #2 中的/drawable/文件夹会导致不同大小的文件。也许构建过程运行类似于 pngcrush 的东西?

无论如何,我想知道是否有人知道在哪里可以找到 Android 构建过程中所有优化的详细描述。我不想浪费我的时间来优化已经自动化的东西,而且我认为这有助于我理解生成的 apk。有谁知道这是否记录在任何地方?

最佳答案

这两个是轻微“记录”的优化。

http://developer.android.com/guide/developing/tools/aapt.html “... Zip 兼容的文件(... apk)...” 尽管我不确定它是否使用“最大”压缩...

http://developer.android.com/guide/topics/resources/resources-i18n.html#CreatingResources "注意:放在这里的图片资源可能会被aapt工具自动优化为无损图片压缩。例如,不需要超过256种颜色的真彩色PNG可能会转换为带有调色板的8位PNG "

从 aapt 命令行 “指定像素容差以强制图像灰度化”

至于其他选择......嗯。

关于android - Android构建过程中的优化有详细的描述吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2541052/

相关文章:

android - 改变android中的颜色亮度

android - 如何通过从 Assets 中销毁和重新加载数据库来迁移 Room 数据库

android - 从 Android 手机获取可用的剩余电池时间

build-process - Nant在构建服务器上由于权限错误而失败

linker - 有没有办法知道哪个编译器生成了静态库?

c++ - distcc 中的链接阶段

java - 在 android 中加载数据库时需要一些说明

android - 我应该如何初始化 SKMapInitSettings 的路径?

visual-studio-2010 - Visual Studio 2010 - 调试/构建问题

Subversion 下的 SQL 脚本