发布网友 发布时间:2022-03-27 00:43
共2个回答
热心网友 时间:2022-03-27 02:13
苹果系统的设计和体验口碑一直特别好。比如打开控制中心、多任务处理切换,或APP中滚动浏览等都会比安卓更流畅、更灵敏。尽管安卓的动画效果、全面屏手势等已经可以和苹果系统硬扛,但整体视觉效果不如苹果系统。
造成这种现象源于操作系统底层原因。苹果、安卓系统响应的流程、优先级不一样比如锁屏解锁时苹果手机的响应速度会比安卓手机快。苹果系统对屏幕响应顺序为Touch→Media→Service→Core,通俗一些说就是当用户触摸屏幕后,系统会先处理屏幕显示(Touch),然后才是媒体(Media),服务(Service),架构(Core)。
安卓系统对屏幕响应顺序为Application→Framework→Library→Kernal,通俗一些说就是当用户触摸屏幕后,系统会先激活软件(Application),然后调用框架(Framework),屏幕(图形图像处理在Library),架构(Kernal)。
苹果、安卓系统对硬件加速的表现不一样苹果系统一开始是为触摸屏幕交互而设计的,而安卓的设计初衷是为运行更多软件的兼容平台而开发。苹果系统对图形特效处理基本都是基于专用的GPU硬件,而不用完全借助CPU,通过GPU的渲染可以达到更流畅的操控表现。
安卓系统需要适配不同硬件来满足各种厂商的差异化硬件配置,它的设计逻辑也不是为了触控服务。虽然在安卓4之后默认都开启了GPU硬件进行加速渲染,但仍然无法做到所有图形特效都靠GPU进行加速。
苹果、安卓系统的后台机制不一样苹果系统的后台机制:当用户按HOME键退出软件时,系统就直接关闭了该软件,只保留了软件的图像作为再次打开的入口,并默认将软件的最后运行数据记录在内存中。当用户再次打开软件时,系统就会把之前保存的最后运行数据还原到软件中,给用户一种错觉,认为软件一直在后台运行。
安卓系统的后台机制:当用户按主页键返回桌面或退出软件时,软件并没有关闭而是整个保存在内存中,软件仅仅只是从前台挂到了后台。
这就是为什么安卓就算关掉了软件,还是能够接收到软件的消息通知,因为软件一直都在后台运行。
为什么苹果也能收到软件的推送消息?用户开启了软件的推送后,软件服务器推送信息会发送到苹果的服务器,再通过服务器发送给用户,而不需要软件开启。
后台机制的不同直接导致苹果手机虽然内存比安卓手机的低,但还是会给人感觉使用起来更加流畅。苹果、安卓系统的开发机制不一样苹果系统的编程语言是Objective-C,编译器是GCC。GCC编译出来的代码在苹果系统运行可谓达到极致,运行过程不需要虚拟机,执行效率非常高。并且GCC自己分配和回收内存,所以苹果系统的内存使用率并不高,并不需要像安卓那样需要特别大的内存。
安卓系统的编程语言是Java,Java内存管理是通过jvm,并不需要程序关注内存。当内存使用量达到一定量时就会触发gc(gc会把用户线程停止掉)。这就造成了安卓系统卡顿的等待时间长达几秒甚至几分钟。
安卓的所有软件都是运行在一个虚拟的环境中,由底层传输数据到虚拟机中,再由虚拟机传递给系统UI,在这种情况下任何软件都可以轻松访问其他软件的文件。同时gc内存占用到一定程度才会回收内存,导致安卓的内存使用率很高。虽然安卓4开始编程语言和机制已经改善很多,卡顿现象也明显降低了,但还是不如苹果系统。苹果、安卓软件的开发机制不一样APP
Store上的每一个软件一年顶多适配两种CPU,极大的提高了硬件利用率和软件的开发速度。
而安卓是开源,给开发人员很高的开发自由空间,并且兼容各种各样的硬件,软件可以天马行空不受管制。
所以安卓饱受“流氓”软件的*,系统的流畅度和整洁度远比不上苹果。但安卓系统对软件的操作也越来越规范。苹果手机也并不是不会卡,当系统更新再更新,每次系统更新都会给旧版本的手机带来一定的压力。虽然响应级别、硬件加速、后台机制、开发机制和软件开发等因素造成了安卓不如苹果流畅,但好在安卓的硬件配置赶超了苹果一大截,安卓手机系统和软件运行流畅度和美观已经不弱于苹果系统。
以上个人浅见,欢迎批评指正。认同我的看法,请点个赞再走,感谢!喜欢我的,请关注我,再次感谢!
热心网友 时间:2022-03-27 03:47
很简单,苹果封闭系统有专人负责审核管理软件!安卓没人管,软件想干嘛就干嘛。