iPhone 为什么不加大内存?

图片:Negative Space / CC0 余觉得,码农

这现实上是一个手艺问题,涉及到 iOS 与安卓两个操作系统的设计道理。

起首,安卓机上大内存,这是个中国特色,也就是说只有中国国内发卖的安卓机才会上这么大的内存,海外版的安卓机本家儿流内存根基和苹果差不了太多。图我就不贴了,大师可以本身去查一下,华为的 P30,海外版的 128G 硬盘的型号只配 4G 或 6G 内存,而中国版的 P30,64G 硬盘的型号却配上了 8G 内存;海外版的安卓机,128G 硬盘配 4G 内存触目皆是,的确不要太多,但在国内,你几乎找不到一条目 128G 硬盘配 4G 内存的安卓机。这样乍一看仿佛我们得了廉价,可其实,这是国产安卓生态的无奈之举。

先说国内安卓机为什么上大内存吧。举一个例子,好比我们常用的微信这个 APP,起首你打开微信登录账号后,你手机上的微信 APP 就会和腾讯的办事器连结一个长久的毗连,你发一条动静给你伴侣,这条动静不是直接从你的手机上发到他的手机上的,而是你的手机将动静发给了腾讯的办事器,然后腾讯的办事器再发给你伴侣。这个时辰就有一个问题,若是你伴侣手机上的微信 APP 处在封闭状况下,那么即使腾讯办事器把动静发曩昔了,他也收不到,因为他的手机上微信 APP 已经完全封闭了,已经和腾讯办事器断开毗连了,只有当他再次打开微信的时辰,毗连恢复,他才能收到那条信息。也就是说,想要实时收到动静,那么微信这个 APP 就不克不及完全封闭,需要留下一些线程在后台一向连结运行,一向和腾讯的办事器连结接连,这样一旦收到动静,系统才能实时启动动静机制提醒你。

所以,国内安卓系统下,每一个 APP,都必需在后台(也就是内存里)留下一些线程随时筹办领受外来信息,也就是说你刚打开手机还啥都没干,你手机上所有 APP 的一部门线程已经暗暗启动,进驻内存,而这些后台启动的线程是无法封闭的,因为是正当的,封闭的话用户就无法实时收到动静。别的,不要小看这些后台线程的数目,一个 APP 在后台里留十几二十 MB 确实不多,但 100 个 APP(64G 硬盘的手机就能装 100 个 APP)加起来就要吃失落快要 2G 的内存!

是以,国内安卓机的内存容量必需跟着硬盘容量递增,硬盘容量越大,能下的 APP 就越多,就越需要更大的内存来包管这些 APP 留在后台的线程正常运行。

再说 iOS,它为啥就不需要大内存呢?因为苹果有本身的办事器(谷歌现实上也有本身的办事器,但国内不克不及用,下面会说)。iOS 的这个系统,必需搭配苹果公司的办事器才能正常运行。每一台 iOS 设备在联网的时辰,iOS 系统起首会和苹果的办事器成立一个长毗连。

仍是微信那个例子,在 iOS 上,若是微信处在打开状况下,那么逻辑仍是和上述安卓的一样,差距是表现在封闭微信后。若是你 iPhone 上的微信 APP 封闭了,会和腾讯的办事器断开,而这个时辰,你伴侣发了一条动静给你,这条动静先发给了腾讯的办事器,这时腾讯办事器发现你手机上的微信 APP 没有和办事器成立毗连,那么它会将这条动静回头发给苹果的办事器,然后苹果的办事器收到后会发送给你的 iOS 系统,系统收到就能实时做出提醒。这样现实上是多了一个步调,但带来的益处是你手机上的微信 APP 可以完全封闭,不需要留下多余的线程来领受动静,因为苹果的办事器会一向连结领受动静,然后将动静发给手机系统,系统再做出提醒。

这样一来,苹果手机的内存就不需要跟着硬盘容量一路递增,因为即使 APP 完全封闭,也不影响实时领受动静。再加上 iOS 系统现实上不撑持真正意义上的后台运行(仅持后台听歌、下载、导航等有限几个操作,若是一个 APP 进入后台,10 分钟内没被换到前台来,那么系统就会将它封闭,只留下临死前的一个截图,所谓的墓碑机制),所以苹果手机的这些内存绝大部门时候内其实只为一个 APP(当前这个)办事,一个 APP 利用 4G 内存,真的是绰绰有余,有余到多的不克不及再多了。

插个题外话,都说苹果手机平安,注重隐私,也有这个原因,苹果手机上的 APP,若是封闭了,那就是真的全数线程都封闭了;而安卓,因为每一个 APP 都必需在后台留一些线程一向运行,有的无良 APP 甚至手机厂商,就不仅仅会留下领受动静的线程,还会留下偷偷开启摄像头或者麦克风的线程,去收集用户数据,而这些后台的的线程,因为是系统代码层面的工具,用户底子没可能去封闭。

最后,说一下海外版安卓机为什么也不上这么大的内存,因为海外版安卓机可以利用谷歌的办事器(前段时候闹的沸沸扬扬的安卓遏制对华为授权事务,现实上就是谷歌不让海外版华为毗连谷歌的办事器了),而利用了谷歌的办事器,推送机制就变得和 iOS 一样了,就不需要有 APP 本身的线程留在后台了,谷歌的办事器会帮 APP 们领受信息。

而因为众所周知的原因,国内安卓用户是无法毗连谷歌的办事器的,那么,APP 要想实时领受动静,开辟者也只能利用常驻后台这个方式,而让 APP 线程常驻在后台,需要大量的内存撑持,那国内的安卓机就只好加大内存。那么,谁来为这些多出来的内存买单呢?羊毛都出在羊身上,当然仍是用户,仍是消费者。这就是我们国内安卓用户的悲催之处,我们不仅要忍受隐私的泄露,还要为这样的行为买单。

今朝,国内的 APP 驻留后台已经把国内的整个安卓生态搞的乌烟瘴气、参差不齐。其实很多多少大厂想过解决方案,好比小米推出本身的推送办事,华为也有本身的推送办事,但全都见效甚微。因为没什么开辟者去共同他们,一来因为开辟者适配的话需要一个厂一个厂去适配,晋升了开辟当作本和维护当作本,二来 APP 开辟商也不肯抛却常驻后台带来的好处。

今朝比力值得等候的,是安卓推送联盟,这个联盟是由工信部牵头的,运行机制和 iOS 的推送道理差不多,若是能周全铺开,可以解决上述问题,但这一套此刻还在测试阶段,仍是个夸姣的愿望,日后能不克不及周全铺开仍是前途未卜。

所以,苹果不上大内存,真不是厨子抠门,因为没需要了,国内安卓机 12G 内存都打不外苹果 4G 内存,为什么?因为 12G 内存里,很大一部门是留给国产 APP 常驻后台用的。

就是这样。

  • 发表于 2019-09-30 21:33
  • 阅读 ( 917 )
  • 分类:其他类型

0 条评论

请先 登录 后评论
admin
admin

0 篇文章

作家榜 »

  1. xiaonan123 189 文章
  2. 汤依妹儿 97 文章
  3. luogf229 46 文章
  4. jy02406749 45 文章
  5. 小凡 34 文章
  6. Daisy萌 32 文章
  7. 我的QQ3117863681 24 文章
  8. 华志健 23 文章

联系我们:uytrv@hotmail.com 问答工具