现在的位置: 首页 > 看点 > 正文    Laomo.meQQ群

Android用上12GB了,iPhone为什么不加大内存?

2019年10月15日作者:网友 看点 ⁄ 阅读 13,426 次
Laomo.meQQ群  社区  电报  |  WiseCare365正版2折  |  Office正版2折  |  IDM下载器6折  |  Win10正版2折

老殁,殁漂遥,laomoit.com,shaoit,laomo.me,mopiaoyao

Android已经上到12GB内存(RAM)了,是iPhone的6倍。

这实际上是一个技术问题,涉及到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常驻后台用的。

知乎@余以为

              👍 点赞              

相关推荐

发表评论

目前有 25 条留言    访客:23 条, 博主:2 条       申请 🧑🏻留言头像     Laomo.meQQ群

  1. velatne 2019年10月16日 下午1:01  Δ11楼 回复
    Waterfox 56.2.14 - Windows 7 x64 Edition

    就是在讲GCM消息机制吧,国内所谓大内存,就是房子写用户名字,实际上只分配了一个小房间,其它都被安排好了。。。

  2. 11 2019年10月16日 下午12:11  Δ12楼 回复
    Google Chrome 77.0.3865.90 - Windows 10 x64 Edition

    可能苹果的祖传5V1A也是为了减少火灾的发生吧,另外也让用户少玩手机,注重运动!

  3. 人在美帝,刚下飞机 2019年10月16日 上午9:30  Δ13楼 回复
    Google Chrome 69.0.3497.100 - Windows 10 x64 Edition

    逼乎向来是跪舔苹果舔到站不起来,这倒也符合逼乎的一贯作风。而劳模转载这个文章我觉得十分意外。都9102年了,还4G运存、还说够用?这东西不是你生产厂商说够用就够用了,不是你生产厂商说够用就不加运存了,这个得用户说了算。开个相机就把前面打开的应用给清干净了,这不是运存不足是什么?还舔着脸说不是厨子抠?人活一张脸,跪舔也要有个限度。再者说一万多的机器加几G运存,这要求过分么?我看到的只是有那么一群人天天喷安卓,时时舔苹果,个个争当精神股东,乐此不疲。拿着个苹果手机偷着乐不行么?当然不行,这群人非得要找优越感。优越感怎么找呢?很简单,那就是喷安卓。他们仿佛认为这样做就能提升自己的逼格,就能体现自身的价值,甚至能让自己的社会地位瞬间提高几个档次。
    一个手机就能带来这么多优越感,这样的人生未免也太过廉价了。
    其实这年头手机也够累的,它被人为的强加了太多多余的东西。


    • 城 管
      老殁 2019年10月16日 下午1:19  ∇地下1层 回复
      Google Chrome 69.0.3497.100 - Windows 10 x64 Edition

      送我一台满怀优越感的iphone11promax吧,我愿意人生廉价。

    • huangwenen 2019年10月16日 下午1:46  ∇地下1层 回复
      Google Chrome 69.0.3497.100 - Windows 10 x64 Edition

      这文章你没看还是看不明?总结就一句话:“国内Android生态圈决定内存不够用,苹果统一推送服务够用” 国内的话Android内存够不够用是就是软件商说了算,这就是事实。这根跪舔有什么关系?

    • BBL 2019年10月19日 下午10:55  ∇地下1层 回复
      Opera 12.14 - Windows Vista

      多读读书吧孩砸,别用自己的短见去评判一个事实,这只会让你自己显得很没见识。不说五年十年之后就说现在都是新买的安卓和苹果,可能刚开始性能上看着区别不大,等你用一年两年你再比比你就知道什么叫做差距。苹果的处理性能好,安卓的处理性能差。但是安卓可以根据用户各种DIY改进。苹果却只有一昧的风格,萝卜青菜各有所爱,更何况这里也只说到苹果的性能强而已。

  4. faker 2019年10月15日 下午11:43  Δ14楼 回复
    WebView 4.0 - Android 9

    这样

  5. xzhlksh 2019年10月15日 下午10:50  Δ15楼 回复
    Google Chrome 74.0.3729.169 - Windows 10 x64 Edition

    怎么说呢,不过是厨子扣成本罢了,那点可怜的内存杀后台、造bug最近还不够严重么?
    另外,由于特殊国情,国外app总是被墙内过分吹捧。比如FB那种体量的app根本不鸟gms,也一样我行我素常驻内存,不比国内那帮厂商纯洁到哪去

  6. 昵称无有 2019年10月15日 下午8:49  Δ16楼 回复
    Google Chrome 61.0.3163.79 - Windows 10 x64 Edition

    殁水平就这点 英文太差国外论坛看不懂 苹果屈服美国政府压力下收集所有人隐私 好莱坞不雅照花钱摆平拒绝赔偿 稍早自家系统无法升级 高手根本不会在ios作测试

    • 2019年10月15日 下午10:03  ∇地下1层 回复
      QQbrowser 10.4.3587.400 - Windows 7 x64 Edition

      要不你写篇文分析一下前因后果?再解释一下为啥"Android用上12GB了,iPhone为什么不加大内存"?不是不信你多牛,实在是水平不足没脸喷,不然我也喷他了

      • 无有 2019年10月16日 下午6:25  ∇地下2层 回复
        Google Chrome 61.0.3163.79 - Windows 10 x64 Edition

        和殁一样蠢 或者是殁的分号

  7. Sakuzyo 2019年10月15日 下午8:22  Δ17楼 回复
    Safari 13.0 - iPhone iOS 13.1.2

    然而iOS的内存也根本不够 太容易杀后台了 尤其是打卡相机后 很多App后台就被清了 烦得一B 玩个游戏切个屏就没了 说到底还是苹果看利益不想做大内存 想做的话绝对能大幅改善杀后台问题