对于BlackBerry应用程序,是否有5 MB太大?

问题描述:

我参与了一个旧版BlackBerry应用程序,其中COD安装文件大小约为5 MB(主要来自嵌入式图像等)。这个大小是否值得关注?黑莓应用程序通常应该小一些,为什么?对于BlackBerry应用程序,是否有5 MB太大?

到目前为止,这个问题的一些很好的答案。我想添加的一件事是,如果您的应用中存在重复的图像(以支持不同设备上的不同屏幕尺寸),请考虑创建应用的不同版本,该版本仅针对特定屏幕大小使用图像。如果您还针对不同的操作系统版本,这可能会使构建的总数增加很多 - 但如果您担心应用程序的大小,那么这是一个好方法。

+0

是的,马克,我也应该强调这一点。 :) – 2010-11-20 20:20:07

您应该先尝试优化图像。运行图像槽http://www.punypng.com/是一个很好的方法来做到这一点。看看一些图像是否可以被更小的图像取代,或者尽可能地使用相同的图像。
根据型号的不同,Blackberry设备有32或64或128 MB RAM。您需要考虑是否所有这些5 Mb将在内存中同时使用,或者是否会使用更小或更大的数量。请记住,您可以在RAM中创建40 MB大小的应用程序,但不能运行其他应用程序。

+0

不幸的是,图像非常微妙,因为它们使用了很多渐变。 BB屏幕通常是16位色彩,并且任何形式的图像重压缩都会使它们显得特别可怕。 – MusiGenesis 2010-11-20 03:14:25

+0

Torch 9800和Bold 9850等最新的设备拥有512MB的闪存,所以随着时间的推移它的问题越来越小。但是仍然有很多空间有限的市场设备,特别是如果已经安装了大量应用程序的话。 – 2010-11-20 20:06:59

+1

我认为http://www.punypng.com/会进行无损压缩,如果它是png,并且如果它是jpeg则会损失很少。如果您不喜欢结果,请尝试使用,并不要使用图片。 – Zalastax 2010-11-20 22:07:58

嗯,我不认为5Mb是一个现代智能手机太多。无论如何,如果你的应用确实需要所有的图像,那么你只能拥有一个大的代码文件没有其他选择。在某些互联网速度较慢的情况下,这可能会导致OTA安装过程缓慢。所以一些不耐烦的用户可能会取消安装。为了克服安装缓慢的问题,一些开发人员将资源中的核心代码分开,因此在安装OTA之后,第一次运行应用程序时可能会下载资源,可能是在弹出窗口或某种设置向导下。这当然会使启动代码更难实现。

我能想到的另一个问题是 - 图像尺寸是否优化?无论您的图像颜色深度如何,BB均以16位色彩通道方案(RGB 565)显示颜色。所以值得通过一些565过滤器预处理所有的图像(如果还没有的话)。有很少的Photoshop插件。但是,不要指望减少巨大的尺寸。对于5 Mb的图片集,您可能会获得1 Mb的“折扣”(20%),所以无论如何,您仍然会拥有多个MB。

最后的注意事项 - 确保正确构建您的类,以便正确使用RAM。很可能你有一些压缩图像格式(JPG,PNG)的图像资源。因此,在这种形式下,它们相对较小,但是当它们变成位图时,位图区域的每个像素至少需要2Bytes或至多4Bytes(取决于位图类型)。确保你不会玩过多的静态内容,因为一旦它被载入,它就会活着(吃内存)直到非常程序结束,除非你手动取消它。

谢谢。

+0

这是一款黑莓手机,不是“现代智能手机”。 :) – MusiGenesis 2010-11-20 20:45:48

+0

新版本的操作系统是否具有32位ARGB位图类型?我被困在4.6.1中 – MusiGenesis 2010-11-20 20:46:59

+0

刚刚看过4.6.1和6.0的Bitmap API - 它们在这部分没有区别。 – 2010-11-21 10:02:26