“体型并不能说明一切”?

最近在思考应用程序大小&占用磁盘空间的问题,

比如我的手机, 这一个月几乎天天提醒”空间已满”blablabla~

现在把QQ等的记录都清空, 相册只剩几张照片, 连虾米的缓存音乐也删掉部分.

打开”用量”:

我们稍微算一算, 如果一个程序占用空间500M, 那么实际使用空间11G左右的iPhone(16G版), 就只能装22个应用.
如果一个应用300M, 这个数字就是约37个.

那在天朝我不得不用的应用有哪些呢?

微信(345M), QQ(244M), 微博(157M),
淘宝(249M), 支付宝钱包(152M), 淘宝电影(38M), 口碑外卖(42M), 阿里巴巴(109M), 旺信(89M),
美团(94M), 猫眼电影(48M), 京东(89M), Amazon(76M), 当当(47M),
高铁管家(46M),
手机营业厅(37M),
百度地图(361M), 百度云(314M, 备份了照片, 这样还稍微减了减手机空间的压力)
虾米音乐(477M),
Argus(279M 记录步数心跳等等), Nike Running(124M),
Twitter(120M), Facebook(134M), Instagram(37M), LinkedIn(102M), Skype(96M), Pinterest(70M), Pocket(61M), 有的是自己用, 有的是开发必须, 为了测试非装不可.
iTV Shows(43M 追剧必用, 不缺不漏剧集),
Paypal(73M),
快的叫车(52M), 滴滴打车(69M), 一号专车(51M), 打个车非要搞这么多应用, 真的很烦…已合并资源缺不合并应用.
掌上银行(56M, 招行一天到晚啥都要你在App里操作…), 招商银行(50M),
Adobe Acrobat(45M, 邮件里的PDF文件, 比如面试时, 有时要偷偷喵一眼简历嘛)
…抄不下去了, 太坑太累!

个人觉得, 应用程序还是尽量限制在50M比较好, 用户的手机用户不能做主啊( ⊙ o ⊙ )!这并不是不能实现的.

那我们在项目里, 通常是什么在占用空间呢?

一朵普通的应用程序, 编译出来, 都在10M左右(还是很多很多功能的)

但是如果想有微信登录, 不好意思, 要加入WeChatSDK;
如果想有QQ登录, 不好意思, 要加入QQConnectSDK;
如果想有微博登录, 不好意思, 要加入WeiboSDK;
想分享信息到朋友圈? 加WeChatSDK;
想分享到微博? 加WeiboSDK;
想用支付宝钱包支付? 加AlipaySDK;

还有很多用户不知道的需求,
比如转化率调查, 各种SDK, Flurry等等,
还有错误跟踪, NewRelic等等,
还有很多人/公司喜欢将推送通知也加一层, 诸如Parse, 百度云推腾讯信鸽等等, 继续加!
一堆东西加下来, 程序要肥几圈…

在然后就是图片资源了, 如果适配做的不好, 直接拿几套大图的话…很容易看到程序体积成倍疯涨.
当你等待这次commit缓慢的向远端push时, 就应该坐下来认真思考这样做的必要性了.

“这么多这么大的图片, 真的有必要吗?”

就如同App本身的splash screen, 最早只是图片,
所以当iPhone进化到4代, 出现@2x时, 就需要两张图, 而后面这张, 将会拥有4倍与前者的像素.
再还有iPad与retina iPad, 在到现在的iPhone 6与6 Plus,
苹果也给出新的正确解决方案, 使用可以附上autolayout功能的 Launch视图, 来取代多张大图做到适配.

这么多大的图, 多半是没有必要的.

另外, 自定义字体, 如果使用次数十分有限, 完全可以替换成图片.
纯色/渐变的视图, 亦可以代码实现, 而不需要图片.

当用户手机临近装满时, “大裁员”即将开始.
如果无法做到让用户”非装不可”, 那么体积大的程序, 就等着– (嘿嘿)
(苹果的容量提示, 会导向用户到”用量”列表, 这里按照占用空间由大到小排着序, 所以嘛…)

精简而高效, 始终应该是我们程序开发应有的目标.

2 thoughts on ““体型并不能说明一切”?”

    1. 128G太…贵…了… %>_<%, 感觉换iPhone的日子遥遥无期, 现在看那个iPad Pro的Pencil发货期是4~5周, 还有看看自己的钱包, 都想算了. iPhone就更不用想了..

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据