iOS 的 App 为啥体积都这么大了?

2019-02-03 11:05:47 +08:00
 icylogic

平时没注意容量问题,这几天换了新手机 restore 的时候感觉很慢,才发现现在 App 都 100 MB 起步了。这 …… PC 平台上也都算是比较大的应用了啊, 谁能解释下这体积膨胀主要是因为什么? 图标之类的 assets ? swift 本身或者 react 之类的技术带来的膨胀?



(图中体积是包含数据的,不过点进去可以看到应用本身体积也都是这个量级,淘宝京东 Dropbox 都是 奔着 200 MB 去了)

这个基本不影响我使用,我目前还没遇到过不够用的情况,就是纯好奇。

9113 次点击
所在节点    Apple
34 条回复
yukiww233
2019-02-03 11:23:15 +08:00
之前某个版本美团的 app 都 600m 了,比完整的 win xp 镜像还要大一点
belin520
2019-02-03 11:27:31 +08:00
@yukiww233 600m 大家没有概念,因为手机内存几十 G 起,你一跟一个系统比较,就形象了
太可怕
xy90321
2019-02-03 11:32:08 +08:00
因为要包含各种设备用的不同分辨率的静态资源。
另一方面也是因为快速开发的需求导致了设计和 review 水平的下降,重复的冗余模块增多。
ys0290
2019-02-03 11:35:37 +08:00
就像之前一个帖子有人说的,因为存储空间大了,代码可以写的更垃圾了
ooppstef
2019-02-03 11:39:32 +08:00
一般都是老应用,多个迭代导致的.

一方面,快速迭代中,垃圾资源没时间清理;另一方面,垃圾代码没人敢动,改错了 gg,改对了没人好,还怕你耽误工期;最后一方面,老需求也没人敢砍..你是 pm 你也不敢啊..

最终就这样了.
misaka20
2019-02-03 11:39:52 +08:00
1、首先使用 Swift 增加至少 10M
2、不同的分辨率的资源比较大,bitcode 因为第三方库的原因,不能使用
3、Assets 里面的很多图片,压缩优化一下,与正常的图片,相关比例特别大。我曾经只是 PNG 图片,优化无损压缩了下,项目节省了 50M 的空间。然后 Assets 的图片总大小,才 30M 不到。这是一般公司的项目是会出现的问题,但是大公司我感觉这种问题应该不存在。
4、代码冗余其余占不了多少空间
目前只想到这么多
CoCoMcRee
2019-02-03 11:49:44 +08:00
我晕。。。
CoCoMcRee
2019-02-03 11:51:29 +08:00
app 的体积是会计算 app 内容的。。。比如微信 app, 用的时间久了, 朋友聊天发的图片都会存在 app 沙盒内, 所以计算体积时也会算进去。 现在大多数 app 都会有清理缓存 清理 app 之类的功能。 跟代码没关系啦
Kyle18Tang
2019-02-03 12:02:31 +08:00
@CoCoMcRee 你看到楼主括号里的内容了吗?
adminsam
2019-02-03 12:05:02 +08:00
@CoCoMcRee 搞清楚别人在讨论什么然后再晕也不迟
CRight
2019-02-03 12:14:08 +08:00
苹果自家的应用也是这样,像 iMovie 和三件套这些一个个都挺大,甚至大过微软家的三件套
nathanw
2019-02-03 12:18:29 +08:00
其实还是苹果的问题
CastleBUPT
2019-02-03 12:21:18 +08:00
这题还是由开发者回答吧。因为没有缩减 app 体积的 kpi
edinina
2019-02-03 12:28:57 +08:00
其实就是臃肿,好多没必要的内容
lawler
2019-02-03 12:49:36 +08:00
有几个人不是越长越胖呢?
uuair
2019-02-03 13:29:38 +08:00
硬件跟上,软件倒逼硬件升级,是这个理论吧。
l12ab
2019-02-03 13:48:27 +08:00
app store 的更新里显示的大小是 universal 的大小,详情页显示的是对应你手机版本和系统的大小。
设置里的 storage 大小,是 ipa 解压安装之后的大小。
我觉得引用第三方库导致体积增大了很多,因为很多库里面包含了很多无用代码和资源文件
xjbeta
2019-02-03 14:39:55 +08:00
macOS 版网易云音乐 单独一个.app 文件 14MB.....
yikuo
2019-02-03 20:14:44 +08:00
同样是空白工程,iOS 打包出来就比 Android 大很多,所以应该跟产品迭代还要图片没关系。
Wicked
2019-02-03 20:41:22 +08:00
硬件性能和存储空间溢出,加上开发周期缩短,导致执行效率和空间效率的优化越来越不受重视了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/532793

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX