在超过1000张图片上运行pngcrush后,APK文件大小未更改

Ale*_*ber 0 android apk android-install-apk pngcrush android-studio

我为游戏板和字母平铺图像的文字游戏生成了一个发布APK文件,其大小为14.157.885字节.

然后我在我的Android Studio项目中运行了大约1000个图像的pngcrush,然后是"Clean Project","Rebuild Project",最后再次"Generate Signed APK ...".

令人惊讶的是,生成的APK文件更大:14.158.735字节

探险家截图

我在Windows 7 x64和Mac OS Yosemite上与Android Studio有相同的结果.

下面你可以看到pngcrush确实减少了位图大小- 在git日志中:

git截图

当然APK文件是某种ZIP存档 - 但为什么它的大小增加了?

更新:

提出这个问题的真正原因是因为我使用SQLiteAssetHelper包含一个gzip压缩的SQLite文件(大小:4.988.928字节)并且担心 - 如果APK文件足够小,可以在较旧的Android设备上运行.

Jef*_*ica 5

aapt具有pngcrush等效内置,并作为资源打包过程的一部分在输入文件上运行它.使用高度优化的输入文件,您可能会抢夺aapt运行自己的优化的机会.

如果你更愿意使用自己的,你可以通过gradle设置禁用aapt:

aaptOptions {
    cruncherEnabled = false
}
Run Code Online (Sandbox Code Playgroud)

来源: 问题65335:如果PNG文件已经过优化,则可以使PNG文件更大

  • "不应该"是一个强有力的词; 我要说的是它不太可能有太多帮助,可能会产生轻微的负面影响.无论如何,我都不会走开. (2认同)