如何让你的APP变小

来源:互联网 发布:淘宝光辉钢铁军团 编辑:程序博客网 时间:2024/04/28 16:32

《影响APP的大小的因素:
第一大因素:看你的APP页面采用的是storyboard,xib,代码那一种方式实现。你代码都是用storyboard实现的,那么的APP达到30M很正常,除非你的页面超少。若你的页面是都是用XIB实现的,你的APP达到20M以上也很正常。你采用纯storyboard或XIB,别抱怨你的APP安装包太大了,你也不看看他们每个文件有多大,接受现实吧。你想用他们的可见既可得,自动布局,快速开发功能,你还能对APP提太高的要求,你的想法有点过了。若你的页面全部是用代码写的恭喜你,你的包低于10M以下不在话下,除非你有大量声音文件和图片,第三方库,不然很难太大。但是你只有运行起来才能看效果,不能使用自动布局了,慢慢开发,自己一个一个的适配吧!注意代码实现页面和XIB,storyboard混用时不支持自动布局。那些要求APP在5M一下的标准找抽,没看到很多APP都直奔60M。
第二大因素:很大的声音文件,很多的声音文件。一个声音文件经常200K到1.5M之间,一个声音文件顶你一堆.M文件。在不影响效果的情况下还是低质量的声音文件代替吧,稍微降低下质量就降低几百K,顶你多少.M文件啊,并且别人还听不出区别。
第三大因素:大量使用第三方库。第三方库都很大,别怕,不像.M,storyboard,XIB,声音文件,图片文件不可以压缩,他很容易压缩的很消息在APP占用的并非恐怖的大。不再使用的第三方库尽量CUT了,别让他占地方。
第四大因素:大量图片。把那些以前在使用,现在不在使用的都删掉吧。你换图片是正常,你懒,得到新的不干掉旧的就是一种罪恶了。尽量别支持iPhone4早期版本的一倍图,不然你的图片又要增加三分之一,他们是小门小户就将就着用2倍图吧,不然1倍图,2倍图,3倍图那要3类相同的图片了。现在很多APP都用引导页面滑动动画页面,他们的图片都是超级打的一个顶好多图片那么大。
iphont4,iphont4s是用的1倍图,iphont5,iphont5c,iphont5s,iphont5se,iphont6,iphont7是用的2倍图,iphont6s,iphont7s是用的3倍图。一般现在的应用只出2倍图和3倍图,不再专门出1倍图,毕竟iphont4,iphont4s市场占有率很少了,不再专门关注了。
通过[UIScreen mainScreen].scale可以看到,1倍图的手机它为1;2倍图的手机它为2,3倍图的手机它为3.因此线的高度(1像素)可以用这个宏表示线高(1像素):
//1像素

define YX_1PX (1.0f / [UIScreen mainScreen].scale)

知道了影响APP的因素了,你就对自己的APP大小就要有一个大致的概念了,别提不可实现的需求,也不看你的APP使用的人对流量的敏感程度,再在这四个环节进行优化就能满足你的胃口。大部分人对安装包太敏感是因为你的app版本升级策略有问题,因为你采用了强制升级的策略,并且经常强制升级,强制升级是苹果严格禁止的,虽然你通过app审核期间不强制升级,等上架后再强制升级,这样绕过苹果的审核体制,但是当你的app下载量很大,被人投诉到苹果商店后,是有可能强制下架或再次发版本是审核被驳回,现在不搞你是因为你太渺小,君不见很多app都不支持强制更新的霸王条款吗?使用强制更新通常是你的业务逻辑大变更,你的应用逻辑经常大变更本身就不合常理,你的能保证你对以前业务数据的向下完美兼容吗?人们版本升级或下载安装包通常在wifi环境下,若你弹出强制更新,一般是逼着使用的人强制在2g,3g,4g环境下进行,先不论是否亲民,仅让别人使用中或打开就看到强制更新按钮,不能立刻使用就让人受不了,更没有理由让别人不对流量不敏感,若网络太差更怨声载道。所以强制更新确实应该,防止由于前期设计可能有漏洞,给后期修改业务逻辑后提供机制上的支持,防止有缺陷的业务逻辑前期app和完善业务逻辑的app同时存在,但是强制更新要慎重,别动不动就强制更新。
iphont4s 是2倍图 但是你画一个粗为0.5的线,iphont4s显示不出来,iphont5s却可以看到一个像素(从截图上看到的)的线来。
具体的强制更新机制见我的文章《app的版本更新 》:http://blog.csdn.net/jia12216/article/details/47018463。
下面是开发中用到的iphone,ipod,ipad对应的实际像素点和图片倍率:
iphont4实际像素点:
3.5英寸屏(320*480)
iphont5实际像素点:
4英寸屏 (320*568)
iphont6实际像素点:
4.7英寸屏(375*667)
iphont6 plus实际像素点:
5.5英寸屏 (414*736)
ipod4实际像素点:
4英寸屏(320*568)
所有的Ipad的实际像素点都相同:
768*1024
矢量图的图片倍率
iphont4 1倍图
iphont4s 1倍图
iphont5 2倍图
iphont5s 2倍图
iphont6 2倍图
iphont6 plus 3倍图
iphont7 2倍图
iphont7 plus 3倍图
ipod4 2倍图

0 0
原创粉丝点击