为什么苹果1G内存完爆安卓3G?
为什么苹果1G内存完爆安卓3G?
为什么苹果1G内存完爆安卓3G?
完爆这个词真的正确么?
身边的朋友用苹果和安卓大概一半一半,很多人都是之前用安卓,后来买苹果.买了苹果都会说一句,卧槽,太TM流畅了,再也不用忍受"安卓卡慢丑,滑动卡成狗"的痛苦了.
这话两年前说,没有任何问题,不过现在嘛,事实到底是什么呢?
相信之前搜过这个问题的人都看过这样一种观点:
1.安卓要为上千款不同手机进行适配,而且各家rom的UI不同,需要不同的优化.反观苹果,没有第三方ROM,纯净,自然,流畅.即安卓的碎片化导致卡.
2.Android的开放与自由带来了大量的开发者,也让一部分不遵守规范的开发者进入Android的世界,于是应用开始肆意挥霍硬件资源,不少程序都开始自动启动。当你安装了不少的应用之后就会发现,这些应用都开始驻留后台。杀掉这些应用的进程无助于解决问题(因为他们会自动重新启动,不断地杀进程会造成他们不断重启,最终耗光你的电池),最后你只能彻底删除他们。
3.无奈的Android Market
由于一些让人无奈的原因,各种水平不齐、鱼龙混炸的第三方市场充斥于市。而即使在官方的Google Play也经常爆出恶意软件或者仿冒软件。混乱的市场和不守序的开发者让Android的应用环境进入一个越来越差的死循环。
其实这里说的很对,这在宏观上的确造成了安卓"卡"的事实.
再深入一下,让我们看看响应方式吧,你会有一个更好的理解.
iOS响应顺序依次为Touch——Media——Service——Core架构,当用户只要触摸接触了屏幕之后,系统就会先去处理屏幕显示也就是Touch层级,然后才是媒体(Media),服务(Service)以及Core架构。安卓的优先级响应级别则是Application——Framework——Library——Kernal架构,和显示相关的图形图像处理这一部分属于Library,当你对屏幕操作之后,Android系统首先会激活应用、框架,然后才是屏幕,最后是核心架构。
所以,你可能会想到了,网络差刷微博的时候,为什么安卓比IOS卡了吧,没错,这就是原因之一.
上一篇我说到了论跳楼和安卓卡的关系,今天来说说安卓和IOS的开发语言吧,这是原因之二.
IOS采用的是C语言的超集,也就是Objective-C,俗称OC.安卓采用的是Java,俗称...额,还是java.语法不谈,实现不谈,谈谈内存回收机制.
先看看iPhone这几年来的内存变化
iPhone3G/3GS----128M/256M
iPhone4/4S----512M
iPhone 5/5C/5S/6/6 Plus----1G
安卓呢?
256M--512M--1G--2G--3G,甚至快有4G了
安卓App关闭的时候度要涉及一个过程,那就是Java垃圾回收机制(garbage collection),也就是GC.如果用户要关闭应用,在这中间GC需要大量的内存来工作,如果机器本身内存不够它调配的话,速度自然就慢下来了。
虽然iPhone依然是1GB内存,但iOS跟安卓有本质的区别,其过程中也不会涉及所谓的GC,而是“墓碑机制”,也可以说是“假后台”,APP一旦进入后台,就将APP冻结或休眠.可能有人会问了,冻结了为什么还能收到微信QQ微博通知?这是由于IOS的推送,收到的消息是由服务器推送给你的.良好的推送服务和伪后台机制,可以让你的iPhone在1GB的情况下流畅到爆,因为1GB完全是能胜任的。
所以,iOS会依次把最老的应用直接关闭掉,所以切换到先打开的App时会发现,它们都会从标题界面重新启动。相比之下,Android则不会直接关掉App,而是筛选出其中的一些无用对象,率先把它们Kill,释放部分内存。但只要你不手动关,这些后台程序都不会自动消失。所以就算你今天上午只和基友聊了一句天,晚上再从后台调出微信,画面也肯定还停留在和他的那句基情对白上(前提是你没有装什么360,LBE管家之类,因为现在这些软件都有后台自动杀进程的功能了)。
所以你会听到有人说,苹果优化好.没错,苹果优化好,但没有想象中的牛掰.
IOS和安卓,各有利弊.举个栗子,如果你用iPhone玩一个超大型游戏,很占内存,那等你再切回微信等等,你必须得经历一个闹心的启动过程,细心的朋友会发现有时候打开微信会显示正在连接,如果网络差的话,可能会有好几秒.什么?你半秒就连上?土豪用4G,我管不了你!所以,4G的确很配iPhone,因为相得益彰,这是题外话了.
还有一种情况,你用safari或UC或QQ浏览器打开N个标签,很多很多的时候,最先打开的网页可能就被挂起了,再打开这个标签内容可能会重新加载.什么,你不在乎?流量多?好吧,想象一下你正在填一份很重要的调查表...或正在写一篇像我现在这样长的文章...
不过相比与安卓,苹果这样算良心的了,以前的安卓是怎么坑爹的?这个不用多说,想必大家深有感触:切换APP会卡、接电话会卡、解锁会卡,TMD看个凤姐照片都得等半天!
就像苹果800万像素"完爆"其他安卓手机一样,常年1G,苹果真的就满足吗?其实也是有一些因素影响这个决定的.首先更多内存会更耗电,iPhone续航为什么这么屌屌屌屌屌屌屌屌屌?没错,就是因为它的低内存加低电压模块.再者,升级一块内存,单看不会增加多少成本.不过别忘了,所有的iPhone都是苹果公司生产的,每台都增加,成本还真不少呢.反观安卓,华为中兴魅族摩托,厂太多了.毕竟,苹果还是想赚钱的,将赚钱和体验结合的这么好,苹果大法好!!!
苹果也非常想让内存更大一些,谁不喜欢"大"呢?苹果也意识到随着用户需求的提高,内存问题势必变得更加尖锐,他们已开始行动了:iPad Air2升级到了2GB,这样一来,相信下一代的iPhone6S离大内存也不会太远了。
有人总说,软件装多了好卡,大多数时候我都没有反驳他们,因为当系统出问题时,正好你软件装的多,我没有办法说服你删除所有软件发现你的手机依然会卡.不过我还是要在这里说一句,iPhone装软件再多,和手机卡不卡没有半毛钱关系,半毛钱关系,半毛钱关系.还有人用iPhone喜欢在锁屏前把后台调出来拿个手指往上划--清后台.相信我,你清不清,对你的使用时间几乎没有任何影响.不过有一种情况的确需要清后台,比如有的软件发布新版本,没有经过严格测试,导致耗电快,或者和别的软件有冲突,发热高,这时候你最好还是清后台,不过建议你直接卸载它,等待稳定版本.(你说你强迫症非要清后台?ok,其实我也有,哈哈,不过我已经尽量避免它了,毕竟还是个习惯)
安卓需要清后台么?完全没必要,你清了,它压根就还在!
为什么苹果1G内存完爆安卓3G?
因为,信仰的力量是无穷的!苹果凭借优化和精良的做工,一眼望去就是比安卓机高大上,加上App Store严格的审查保证应用质量,苹果创造的生态系统至少在目前是领先安卓的.
安卓再过两年如果能统一至Android 5.0以上,然后再把手机外观草稿优化优化,或许离安卓超越苹果那天也真的不远了.