这实际上是一个技术问题,涉及到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常驻后台用的。
就是这样。
泻药……
因为评论里大家觉得之前的答案不够准确,所以我重新回答一下墓碑机制,如果有不对的地方感谢各位的纠正 (ps:本回答非专业知识,只是希望能让更多人看懂)
首先,运存越高,手机的成本也就越高,这样一来iPhone就会更贵
其次,对于采用unix内核的iOS来说,它采用的是墓碑机制
其实墓碑机制最早是在Windows phone中出现的,iOS中的墓碑机制,举个栗子 :当一个人去世之后,会在ta的坟前立一座墓碑,上面记录着这个人去世的时间,还有一些个人信息。而iOS中当你按下home键返回到桌面时,之前访问的app便会被系统创建一个“墓碑”,里面包含了app被切换到后台的时间以及最后一次访问的页面信息。但是app在后台是被冻结的,无法访问任何cpu资源,只有当你再一次点开这个app时,“墓碑”上所记载的页面信息会重新加载一遍,从而最大程度保证了前台app拥有足够多的内存空间。
有同学评论说,很久之前打开的应用,很多天以后打开依然没有被结束进程。因为iOS后台原理很复杂,我尽量用简单的概念来解释,⚠️该解释并不专业,只阐述大致的概念。
首先,iOS支持以下七个长时间后台运行的情况
1、audio
2、VoIP
3、GPS
4、下载新闻
5、和其它附属硬件进行通讯时
6、使用蓝牙进行通讯时
7、使用蓝牙共享数据时
(这里删除掉不准确的表达)
即使没有这些需求,app在后台也是可以在运存中被保存10分钟,而不会被清理。
(如果你在这段时间内玩游戏那就两说了)
那这个十分钟是怎么计算的?在iOS4的时候,十分钟的时间是从app切换到后台的那一刻开始计算,也就是无论你在这十分钟时间里干了什么,时间一到只要你没打开过这个app,那么它便会被系统清理,直到iOS7开始,加入了新的记时方式:Background Task Completion
它的原理就是,当你在这十分钟期间进行了锁屏操作,那么计时也会被停止,直到下一次进入桌面(具体的原理更加复杂,这里只描述大概的意思)
后台会不会被清理还取决于你的使用习惯,例如:你点开QQ的次数是160次,点开微信的次数是100次,那么当你玩游戏时运存不够用了,系统会优先清理微信而不是QQ。
因此即使拥有很大的运存,对于iOS的运行机制来说,后台应用一样是被暂停服务的。
说到这里,有人就不服了,照你这么说?iPhonex装个512M的运存岂不是也可以?
在某种意义来说,可以!!!但为什么现在xs却用上了4G的运存呢??
这就不得不提一点,运存的作用是从内存里提取需要运行的文件,达到快速运行的目的。
有人会发现八年前的iPhone4才512M运存,但依旧可以打开微信,QQ。但是越来越多的软件不支持更新到最新版了有木有?。因为新版本的软件需要的运存远远超过的iPhone4的极限运存空间,所以干脆加上一个限制:app所需系统iOS9以上......
怎么样?脑瓜子嗡嗡的吧?
(所以知乎是没办法在iPhone4上用最新版了,2333)
因此iPhone的运存大小是在保证当前app运行环境条件下所提升的。
那么,问题又来了,运存大和运存小对app的流畅性有区别吗?你不是说够用就可以吗?
举个栗子 :把你放在火车的车厢内和放在体育馆里,你在哪个地方跑的更快?
毫无疑问,体育馆里跑得快,因为空间大,所以跑起来无所顾忌。
运存也是如此,更大的运存能够运行更多的app,也能保证app在后台停留的时间越长,(因为运存足够用,所以系统不会频繁清理后台)不过这对于整个iOS的流畅度来说影响不大
因为iOS它和Windows,android不一样,iOS中系统的流畅度是取决于CPU的,⚠️(只要运存足够用)CPU越强大,系统便越流畅,因为iOS中的运存调用由CPU控制,任何app都无法在iOS中私自调用运存(而安卓正好相反,安卓中的app拥有高度自由性,这也导致流氓软件随意启动后台,占用大量运存)所以,CPU性能越强,对运存的调用也就越给力,系统响应时间就会更短,用户体验便会更加流畅
杠精大概会问,如果我之前打开了QQ或者微信,但是我又开始玩游戏了,那么QQ和微信被暂停服务,我怎么收到消息?
Remote Notification
iOS的消息推送机制
在iOS中应用的消息推送和app本身是完全解耦的(就是不捆绑的意思),Remote Notification 会监听每个应用的推送消息,即使应用被后台结束运行,依然可以收到app的消息推送,因此当你不想要再看到微博铺天盖地的消息时,多任务界面结束进程是没有用的,你得去设置里关闭这个应用的通知选项!
回归问题的本身,为什么iPhone不用大内存,总结就是:根本没必要!
—————————————分割线
(本次修改于1月13日,评论有小伙伴觉得我吧啦吧啦解释一大堆,还是没有说出为什么不加大运存)
原因总的来说有两点:
1、从商业化角度来考虑,大运存会导致成本提高(即使提高的并不多)但是以苹果蒂花之秀的尿性,绝对会抬高售价,这样一来会导致手机本身的销量受到影响,而销量上不去带来的结果大家应该都知道吧?看看2018年苹果推出xsMax,并且卖到一万二,结果股市跌成什么样了?
2、从我上面解释的,iOS后台运行的机制考虑,用大运存带给用户的体验是无法被感觉出来的,既然能够用更便宜的小运存,我想聪明人都知道怎么做,那肯定选小运存嘛!
在不影响系统运行的情况下降低成本,何乐而不为呢?
———————————分割线
首先非常感谢各位有耐心看完我并没有多少专业性的回答。
在我看来知乎更多的作用是给未涉及到的知识进行解答,所以我给出的回答并没有非常准确。
倘若有大神指点错误,我会非常认真的修改,再次感谢
——————————分割线
附上评论里大神的讲解,众人拾柴火焰高, 感谢科普哦!
—————————————分割线
真的被气到了,我强调了好多遍,这篇回答是非专业性的,但还是有人要杠,汗
稍微懂点的,都能看出来是Java,这是在学置换法进行明文加密的内容,编程软件用的是eclipse
麻烦质疑我不是程序员的那位同学,请不要随便就质疑这个那个的
程序员只是个统称,里面还细分为很多类别,什么iOS工程师,web前端,数据结构,软件测试,安卓开发等等,外行人都叫程序员好吗?
另外,cpu是通过指令集来控制程序的,因为计算机无法听懂人类的语言,我们编写的代码在计算机里是要通过编译器,翻译成0和1组成的二进制码才能被机器识别,某些评论里说什么程序控制cpu?
我惊了,连我这种在嵌入式开发方面不是特别懂的人都知道,系统的运行都是通过CPU来调度的,就相当于程序是人的身体,而cpu是人的大脑,当一个人想跑步的时候,难道不是大脑在控制???
想怼人的话麻烦自己先充充电,稍微了解一下也不至于丢人现眼吧……
再强调一次!!!
这是个回答是不专业的!!!能理解的就理解,不理解的别跟我怼,谢了!
一群人洗的我都看不下去,想站出来喷两句了,iPhone的小RAM就是坑,非常影响日常使用体验,没法洗地!
没错A系列处理器很强,处理各种任务的速度超快,但是小RAM导致多任务体验极其差劲,甚至令本来以冻结后台提升体验的多后台机制,变成了只能同时运行一个APP的尴尬。
说2个我日常最常见的小RAM带来的烦恼:
然后重新打开王者荣耀,分享任务判定没完成,然后再次尝试,依然杀后台,强制重启手机,清空后台,没任何作用。
当然,工作原因微信聊天记录【从来没删过】,导致微信首页第一屏预加载内容较多,造成了运行内存的压力。
更不用说,游戏过程中,切换微信聊几句,再切回来游戏,有【很大概率】游戏后台没了。
这不都说明了,iPhone X的3GB RAM在【某些情况下】,连2个APP都不能同时储存在RAM上的尴尬吗?
还有,在【后台有且仅有微信】的情况下,在【系统自带相册】里面【编辑】【人像模式】的照片,加个【系统滤镜】和简单调了几下【系统自带的曝光、色彩调整】后,微信依然会被杀掉。(调整人像模式照片出现【概率较高】,【并非】每张照片都【100%】会出现)
这个问题从iPhone 7 Plus到iPhone X都存在!而且,我遇到这些情况的时候,都是在当年7P或者X刚发布不到半年的时候就有的,所以也别说是什么大版本新系统更新的锅。(我和女朋友2台X,都一样,每次更新X.1的这种版本都是【DFU刷机升级】)
一个8000多买的手机,连2、3个APP后台同时保留都搞不定,这不是坑爹?
但是!求你们真的别再给iPhone的小RAM洗地了,我一个果蛆都看不下去了。
尽管我对小RAM不满意,但是,在我买过小米Mix、华为Mate 10,以及OPPO Find X之后,我依然会选择iPhone作为我的主力机,苹果小RAM确实垃圾,但是安卓【综合体验】更差。
你们的手机再神,关我屁事?我手头买来的就是有各种大大小小的问题,而且是天才吧说正常的问题。
另外,有些连什么叫杀后台都搞不清楚的人,能别来搞笑了吗?呵呵。
原谅我用了这么多加粗和中括号画重点,眼瞎的人太多,我玻璃心受不了。
对了,我自己买的iMac Pro自己加到了256GRAM,用着就是爽,以前用的64G顶配iMac,干活的时候经常爆出虚拟内存,能明显感觉到卡顿,你没用过大RAM,就别吹牛逼说RAM够用,RAM这种东西,永远都不嫌少,我家里的MacBook、iMac Pro全都是顶到最高的RAM。
这个问题是怎么又一次上热榜的?
在IOS13.2频繁杀后台后,再看几千甚至五万多赞的高票,难道不觉得讽刺吗?
这个问题是问,iPhone为什么不加大内存?
答案很显然,就是省成本。
苹果软硬一体的优势众所周知,IOS闭源带来的良好生态也被不少人津津乐道,这些都没错。
苹果的优化使得同等硬件能发挥出更好的表现,这也是事实。
但优化好不等于硬件不重要,不等于加大内存没用。
大内存真的如一些高票所说,根本不需要吗?
如果大内存真的没用,推出Smart HDR功能的XS系列何必跃升到4G内存?
如果大内存真的没用,为何即使XS MAX也无法避免使用Smart HDR时杀后台?
如果大内存真的没用,为何连我这种很少用苹果设备的人都被身边的果粉朋友科普过,内存大小是衡量苹果设备可用年限的重要标准?
五万多赞的高票答案中说:
这样一来,苹果手机的内存就不需要跟着硬盘容量一起递增,因为即使APP完全关闭,也不影响及时接收消息。再加上iOS系统实际上不支持真正意义上的后台运行(仅支持后台听歌、下载、导航等有限几个操作,如果一个APP进入后台,10分钟内没被换到前台来,那么系统就会将它关闭,只留下临死前的一个截图,所谓的墓碑机制),所以苹果手机的这些内存绝大部分时间内其实只为一个APP(当前这个)服务,一个APP使用4G内存,真的是绰绰有余,有余到多的不能再多了。
插个题外话,都说苹果手机安全,注重隐私,也有这个原因,苹果手机上的APP,如果关闭了,那就是真的全部线程都关闭了;而安卓,由于每一个APP都可以在后台留一些线程一直运行,有的无良APP甚至手机厂商,就不仅仅会留下接收消息的线程,还会留下偷偷开启摄像头或者麦克风的线程,去收集用户数据,而这些后台的的线程,由于是系统代码层面的东西,用户根本没可能去关闭。
最后,说一下海外版安卓机为什么也不上这么大的内存,因为海外版安卓机可以使用谷歌的服务器。
且不说海外版安卓机是不是真的不上大内存;
苹果手机上的APP如果关闭了,就是真的全部线程都关了?
可是IOS13.2疯狂杀后台、连自家的Safari都不能幸免的时候,大部分果粉不是这么说的啊?
当初流传甚广的图,不是还甩锅国产APP么?
谈论是否需要加大内存的时候,iOS稳定统一推送,内存管理优秀,第三方应用严格审查,不需要像安卓那样的大内存;
IOS13.2频繁杀后台的时候,IOS软件后台监控,流氓为所欲为,国产毒瘤苹果也控制不了,那跟安卓区别何在呢?
薛定谔的IOS……
最后顺带说一句,IOS13.2杀后台的问题,苹果在后续更新中试图修复,变相承认了是系统问题。
但据说问题并未在13.2.2版本得到彻底解决,而是在13.3版本才有明显好转。
这是我前两天试用了某台参数顶尖、功能全面的“机皇”后的感想,就不点名了。
这么一台前无古人的机皇,连基础的手势操作体验都没做好。
首先要澄清一点的是,对 iPhone 来说,手机运存影响更多的是多任务能力,而不是流畅度,不存在“苹果如果上8GB那不是一点都不会卡?”的结论。
拿 2015 年 9 月发售的 iPhone 6s 为例,仅 2G 内存的手机更新到最新系统,如今的运行速度、流畅性和当今旗舰相比丝毫不差,以小白评测的 20 款应用打开速度测试标准来看,甚至比 6G 内存的小米 8 还快一点。( iPhone 6s 142s ,小米 8 143s )
系统的后台调度、硬件运存和应用优化决定了手机的后台能力, iOS 的特殊后台机制能使 iPhone 以低于竞品的运存保留更多的应用后台。
从油管专业测试应用打开速度的频道 Phonebuff 的测试结果来看,同样是涉及日常应用、文档处理、拍照、影音处理、网页浏览、游戏、视频、音乐、购物各大类的 16 个应用, 4G 运存的 iPhone XS MAX 的多任务能力约等于 8G 运存的安卓旗舰手机, 3G 运存的 iPhone XR 的多任务能力约等于 6G 运存的安卓旗舰手机。
既然 iPhone 的多任务能力丝毫不弱于同级别安卓旗舰手机,为什么还要在意用多大的运存呢?
“聪明”的厂商喜欢在能写在 PPT 的功能参数上下功夫,“愚蠢”的厂商喜欢在影响体验的细节上下功夫,仅此而已。
如果要说 iPhone XS MAX 用 4G 运存是为了省成本提利润的话,其实苹果大可以和其他安卓厂商一样:
苹果可以在千万个消费者看不到或者不在意的地方省成本提利润,非得在这些最明显的地方动手脚?太蠢了。
另外,在满足日常使用的前提下,手机运存不是越大越好,具体为什么可以问问你们手机里的黑阈、冰箱、绿色守护、智能管理器或者自带的自启动权限管理功能。
测试结果:
1、XSM( 4G 运存) vs 一加 6T 迈凯伦版( 10G 运存):
XSM 第二轮须重新加载的应用:拍照
一加 6T 迈凯伦版第二轮须重新加载的应用:无
https://www.zhihu.com/video/1068492622083104768
2、XSM ( 4G 运存) vs 一加 6T( 8G 运存):
XSM 第二轮须重新加载的应用:拍照、星巴克、 Facebook
一加 6T 第二轮须重新加载的应用:拍照、 Word 、 Excel 、星巴克
https://www.zhihu.com/video/1068492663447326720
3、XSM ( 4G 运存) vs 华为 Mate 20 Pro( 6G 运存):
XSM 第二轮须重新加载的应用:拍照
华为 Mate 20 Pro 第二轮须重新加载的应用: Word 、 Excel 、星巴克
https://www.zhihu.com/video/1068489914022313984
4、XSM ( 4G 运存) vs 谷歌 Pixel 3 XL( 4G 运存):
XSM 第二轮须重新加载的应用:拍照、星巴克、 Facebook
谷歌 Pixel 3 XL 第二轮须重新加载的应用: 从 Bullet Force 往前 11 个应用。
https://www.zhihu.com/video/1068492719369801728
5、XR ( 3G 运存) vs Galaxy Note 9( 8G 运存):
XR 第二轮须重新加载的应用: Adobe Clip 、Snapseed 、拍照、 facebook
Galaxy Note 9 第二轮须重新加载的应用: 无。
https://www.zhihu.com/video/1068494106971611136iOS应用采用Objective-语言编写,占用内存比Android的java要小。而且iOS的假后台机制,比安卓要节省内存。所以不需要那么大内存,加大内存就没有迫切性了。iPhone几千万台的产品动辄,这方面节省的成本是很可观的。iPhone的均衡性是很好的,光讲内存意义不大,我在油管上看到了一个ipHONE xr和价值1万美元的专业拍电影的摄像机对比视频拍摄的视频,还很厉害的,猛一看,iPhone xr效果竟然比专业摄影机画面还牛逼,这就是很厉害了。
商场运营方的本质是物业公司,
想各种办法吸引人流过来,接着招商,目的是收取租金,然后涨租金。
所以这个问题的本质,是来福士想要吸引的大批顾客群体,他们是不是在意棒棒入内。
如果他们其实希望棒棒不入内,那么来福士不过是个手套防火墙而已,抵挡了来自网络和外界的骂名。
如果他们反对禁止棒棒不入内,那么就算没有这个报道一段时间后来福士自己也会被用脚投票的顾客教做人。
商场是否以为棒棒影响了形象不重要,最终用户怎么想的才重要,想想谁掏钱?
所以,到底是顾客有这样的需求而商场才这么去干?还是商场自以为是的猜测了顾客的需求呢?这只有顾客自己知道了。