我的申请目前超过50MB。我创建了目录:drawable,drawable-mdpi,drawable-hdpi,drawable-xhdpi,drawable-xxhdpi,其中我有不同大小的重复资源。
这些目录中的每一个都包含200多个位图,每个目录的重量都是几十KB。
我想知道如何减少应用程序的大小。我可以减少资源数量吗?例如,进入drawable目录只打包最高质量的位图(那些来自当前目录drawable-xxhdpi),然后只缩放它们?我知道,因为我曾经试图做这样的事情,应用程序“挂起”我,就像我在密度较低的手机上测试一样。
你知道怎么做?
答案 0 :(得分:1)
您可以尝试使用gradle中的splits
根据设备类型构建多个apks,以便在apk中仅捆绑该架构/屏幕密度所需的资源。
关注此tutorial.
答案 1 :(得分:0)
正如@ nabin-bhandari建议的那样,您可以使用Build Multiple APKs documentation中的技术拆分apk。
另一种方法是,如果您已为drawable-mdpi
,drawable-hdpi
,drawable-xhdpi
,drawable-xxhdpi
创建了相同的图片,则可以尝试排除drawable
文件夹。然后,您可以尝试使用pngquant或pngcrush压缩图像。对于pngquant,它声称:
转换可显着减少文件大小(通常高达70%)
我在项目中使用png图像进行了测试,图像缩小到约50-70%。