黑马程序员技术交流社区

标题: 吾之愿也,未来android的改进! [打印本页]

作者: 黑色幽默K    时间: 2015-3-20 22:23
标题: 吾之愿也,未来android的改进!
1.安全机制。
沙箱机制。IOS应用程序只能在为该改程序创建的文件系统中读取文件,不可以去其它地方访问,此区域被称为沙盒。所有的非代码文件都要保存在此,例如图像,图标,声音,映像,属性列表,文本文件等。而且,
1. 每个应用程序都有自己的存储空间;
2. 应用程序不能翻过自己的围墙去访问别的存储空间的内容;
3. 应用程序请求的数据都要通过权限检测,假如不符合条件的话,不会被放行。
如果要访问到其他App的范围,必须要获取管理员许可才行,比如地理位置,相册,通讯录,话筒等。这是苹果系统的哲学,苹果认为只有把各个App孤立起来才能营造良好的用户体验和安全性。
安卓解决方案:系统级的改进,采用沙盒机制,有效保障信息的安全性,保证app卸载干净。
2.后台机制。
安卓手机的后台是真后台,像PC一样,将应用保留在RAM中,当使用HOME键退出应用时,程序实际上并没有完全退出,而是被系统挂在了后台,为何我们关掉了聊天软件依然能够收到消息通知,因为它常驻系统内存。包括平时收到的一些垃圾广告推送,也是因为后台有程序运行。
3.所以这就导致了一个现象,从内存使用上来看,安卓刚开机时内存使用很低,若不进行清理内存操作,正常使用一天,内存占用会达到75%以上。而内存占用越高,使用起来流畅度就会越低,所以安卓机器需要更大的RAM来提升用户体验。
4.而iOS呢,其实是采用的伪后台,当用户HOME键退出应用时,iOS其实关闭了程序,只保留应用的图像入口,只会默认将应用的最后的运行数据记录在RAM中。
5.之所以iOS也能收到推送,是因为当用户从应用中选择开启推送之后,系统会增加一些进程,这些进程会从苹果服务器接收信息,然后再通过服务器发给用户,苹果服务器在这里是起到了中转的作用。而正是因为有了这一系列的机制,所以即便iPhone的配置相比于同类安卓机低了很多,但是iOS还是会给人更加流畅的感觉。
安卓解决方案:采用类似IOS和WP的墓碑式后台,充分利用内存资源,减少耗电,提高流畅性。
3.渲染机制。
Android没有iOS流畅的根本的原因是,iOS的UI渲染采用实时优先级,而Android的UI渲染遵循传统电脑模式的主线程普通优先级。
4.通俗点说就是iOS对屏幕反应的优先级最高,用户只要触摸屏幕,系统就会最优先处理屏幕显示这个层级,马上给出动画效果,然后才处理媒体、服务、核心的架构。
5.而安卓则是追求进程优先,触摸屏幕后的手机屏幕显示和动画效果放在比较后的优先级。同样打开相同的网页,Android手机就会直接将整个网页全部加载同时渲染HTML,这无疑就增加了处理器的压力。因此对于Android来说,一个高效的双核处理器是很重要的。
6.在iOS中UI渲染过程具有绝对的优先等级,当用户接触到iPhone的触摸屏后,iOS中所有的进程都将停止,UI线程拦截了所有的事件,系统会将所有资源用于渲染UI过程,以保证用户界面的实时渲染优先级。
7.而在Android系统中UI渲染过程的优先级别却没有那么高,也就是说当你触摸Android手机屏幕的时候,系统后台的程序并没有停止,仍然在继续运行之中,比如下载和查收短信,这样系统UI获得的资源就不够,这就是Android系统不流畅的原因。
安卓解决方案:改变渲染机制优先级顺序。
4.Appstore。
应用软件生态
安卓APP五大乱象
1.卸载不干净。
2.缓存不主动清理
3.频繁后台联网升级
4.广告插件。
5.诱导推广APP下载。
安卓解决方案:国内的四大手机厂商,应统一应用商店,规范安卓APP生态,可合资开一个新公司,专门规范国内APP开发环境。
5.编译过程。
安卓系统的编程语言是Java,特点是通用性强,效率低。而iOS的则为Objective-C,专一性强,效率高。iOS系统本身优化得很好,而且程序也是直接执行,所以效率很高。而安卓系统是通过Java虚拟机来执行,系统需要占用大量内存来换取执行速度,也就是要绕了个大圈才执行程序,所以效率低很多。
安卓解决方案:采用ART模式,即预编译系统。
6.推送机制。
Provider是指某个iPhone软件的Push服务器,APNS是Apple Push Notification Service的缩写,是苹果的服务器。
上图可以分为三个阶段:
第一阶段:应用程序把要发送的消息、目的iPhone的标识打包,发给APNS。
第二阶段:APNS在自身的已注册Push服务的iPhone列表中,查找有相应标识的iPhone,并把消息发送到iPhone。
第三阶段:iPhone把发来的消息传递给相应的应用程序,并且按照设定弹出Push通知。
安卓解决方案:国内应统一消息推送服务器,提高效率,由四大软件公司发起,组建推送联盟。
注意:以上内容,均为本人引用前人所述,整理所得!
作者: fantacyleo    时间: 2015-3-20 22:46
安卓是开源的。你把源码下载后自己就可以改动以实现上述功能。别忘了改完后发布你的代码,回馈开源社区
作者: 和谐木马    时间: 2015-3-21 00:15
想法很好!新手都还没想这么深,先学会了!
作者: lrd7512369    时间: 2015-3-21 12:19
好厉害的大兄弟,留下QQ我们一起干翻苹果?
作者: 明羽果果    时间: 2015-3-21 13:37
还是很有比较了解一下的
作者: 黑色幽默K    时间: 2015-3-21 18:25
lrd7512369 发表于 2015-3-21 12:19
好厉害的大兄弟,留下QQ我们一起干翻苹果?

太天真了哥们,先把黑马的课程学完了,再谈!
作者: 黑色幽默K    时间: 2015-3-21 18:26
fantacyleo 发表于 2015-3-20 22:46
安卓是开源的。你把源码下载后自己就可以改动以实现上述功能。别忘了改完后发布你的代码,回馈开源社区 ...

先学完黑马的课程后把!我才能去修改ROM的代码吧!!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2