Android系统为什么比以前的手机系统强大
2012-10-26 10:43
288 查看
有网友发私信提到这样的问题,自己做过很多个移动平台,比如symbian ,mtk,android,ios,简单的把自己的对这些问题一些理解写出来,希望能回答到这位网友的问题。
ni*****网友提问说: 我不是在做软件的,只是因为兴趣才产生这样的疑问,希望能指教 android平台的应用是用java做的是吗,多年前手机就有java模拟器了,那时候怎么手机的java程序感觉并没用现在的android应用功能强大?除了手机硬件的升级,软件上有哪些区别吗,与android的dalvik模拟器有关系没?? 谢谢~
首先,要知道,java只是一门编程语言,它并不能让android系统变得强大。
![](http://img.my.csdn.net/uploads/201210/26/1351219096_7690.jpg)
容芳志 (http://blog.csdn.net/totogo2010)
本文遵循“署名-非商业用途-保持一致”创作公用协议
ni*****网友提问说: 我不是在做软件的,只是因为兴趣才产生这样的疑问,希望能指教 android平台的应用是用java做的是吗,多年前手机就有java模拟器了,那时候怎么手机的java程序感觉并没用现在的android应用功能强大?除了手机硬件的升级,软件上有哪些区别吗,与android的dalvik模拟器有关系没?? 谢谢~
首先,要知道,java只是一门编程语言,它并不能让android系统变得强大。
1、硬件方面
android手机的强大第一肯定和硬件升级有很大关系。以前的手机处理器100Mhz ,内存几十兆。现在的手机处理器去1-2Ghz,还有的双核的,内存1-2G。现在的手机比老的PC还强大,以前在手机上想都不敢想的事情,现在很轻松的就实现了。2、软件方面
你说的多年前的java模拟器就是那时候的java虚拟机,在手机上的java应该叫j2me,是为了适应手机的小内存小处理能力简化的java虚拟机。功能只能做些简单的界面和图形,还能联网。你说的那样的手机可能有symbian ,mtk(所谓的山寨机),诺基亚symbian系统之前的手机,还有其他芯片厂商出的系统比如M-star,还有一些说不上来系统的手机,都是放了一个小的j2me虚拟机,而且这些j2me的虚拟机的标准每个手机都不一致,虚拟机的厂商很多,导致虽然都是java小程序,一般只能在某个手机上运行,其他手机运行不了。3、Android系统的强大
看看Android的系统架构图。从Android系统分析它的强大的原因:![](http://img.my.csdn.net/uploads/201210/26/1351219096_7690.jpg)
1.Libraries层
看中间Libraries层,android集合世界上大量优秀的开源库。每个开源库都有很强大的功能。SQlite使得android有了数据库的功能。 WebKit库使得android浏览器能像PC浏览器一样浏览网页。OpenGL使得了手机有了3D图形的能力,SGL 2D引擎。FreeType各种字体。 Surface 使得渲染界面更绚丽。其他库的作用你可以自己看。这些库都是C或者C++编写的,功能性能都非常好。应用层的java语言通过JNI连接到这些库,发挥这些库的作用。这个库层以前手机没有,也不敢有。2、Dalvik虚拟机
Dalvik虚拟机直接连接Linux内核,提供程序核心的服务:比附线程,内存管理。程序运行的更快更稳定。Dalvik也是java语言运行的环境,有了它才能解释java语言。Dalvik把java的大部分的库都集合进来了,这样程序员就能方便的使用java环境的类集合,比如字符串库,排序,查找等等。以前2me只能使用java全部环境的少部分的功能。应用层那不用java语言行不行呢?肯定也行,比如用python或者其他语言,google选择java可能是java的程序员多,java足够流行,文档也丰富。这样对android的发展有力。没有开发者的支持,就没有应用的丰富,没有应用和游戏,智能手机的功能就回归到了打电话和发短信了。3、Android 的源码开放
Android的源码的开放,让培训英语的老罗都有机会做手机。其实你自己可以。可见开源的威力(虽然android不是完全的开源)。现在全世界的大部分的手机厂商都在做Android手机,众人拾柴火焰高啊,大家都在做,就形成了良性循环,于是Android 的世界里,手机种类也多了,有几百块的也有几千块一个的,android ipad也出来了,android使得智能电视这样的东西也做出来了。还有Android的硬件抽象层(HAL层),可以让设备厂商保持自己硬件驱动的保密性,又可以让厂商自己的驱动和上层应用的接口保持一直,增加了设备厂商的积极性。设备厂商可以轻松的添加自己特定的硬件。4、Android应用的开发
相对Symbian开发来说,Android 提供了非常完善的开发参考文档(http://developer.android.com/index.html),设计文档等等,文档的详细程度比symbian好很多倍。让开发者能快速的上手开发软件。开发工具主要使用Eclipse, 在Eclipse 上提供了很多Android开发的强大的插件。容芳志 (http://blog.csdn.net/totogo2010)
本文遵循“署名-非商业用途-保持一致”创作公用协议
相关文章推荐
- Android系统为什么比以前的手机系统强大
- iPhone为什么比Android系统手机好?
- 涨姿势:Android手机的系统为什么叫ROM
- 强大的Android系统,可自由修改手机型号、SDK版本号等信息。
- Android系统手机为什么卡?
- Android手机系统升级是刚性需求吗?
- [置顶] Android中高仿快牙实现Socket列表的展示,获取安卓手机系统安装的应用和自己安装的应用相关信息
- Intel 展示了可在大屏幕显示 Linux 系统的低端 Android 手机
- Android系统为什么不允许在线程中访问UI呢?
- MAC下如何配置Android手机调试(将测试手机加入到Mac系统的调试列表中)
- Android开发之系统信息【1】——获取Android手机中SD卡存储信息
- Android 获取手机的厂商、型号、Android系统版本号、IMEI、当前系统语言等工具类
- Android系统手机图片存放SD卡地址路径
- 【转】Mac OS X下Android系统M2、华为部分手机无法连接问题之解决方案
- Android判断手机是否是小米MIUI系统
- android-android各大手机系统打开权限管理页面
- android字体不随手机系统字体改变
- android系统中使用TelephonyManager类来获取imei号和其他手机信息
- 为什么Android系统要比ios卡