`
yidongkaifa
  • 浏览: 4071584 次
文章分类
社区版块
存档分类
最新评论

Android系统为什么比以前的手机系统强大

 
阅读更多

有网友发私信提到这样的问题,自己做过很多个移动平台,比如symbian ,mtk,android,ios,简单的把自己的对这些问题一些理解写出来,希望能回答到这位网友的问题。

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系统分析它的强大的原因:


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高级编程--源代码

    由于现有的手机应用程序的开发是构建在各手机厂家的私有操作系统之上的,所以它限制了第三方应用程序的开发,而Android为我们提供了一个开放和通用的选择。因为没有了人为制造的障碍,所以Android开发人员可以自由地...

    新版Android开发教程.rar

    这一联盟将会支持 Google 发布的 Android 手机操作系统或者应用软件,共同开发名为 Android 的 开 放源代码的移动系统。开放手机联盟包括手机制造商、手机芯片厂商和移动运营商几类。目前,联盟成员 数 量已经达到了...

    安卓模拟器

    如果你没有安卓手机,可以比以前更轻易地接触到各种新奇好玩的应用,看看安卓的软件到底是长什么样的;如果你本身是Android的用户,那么可以在下载软件/游戏之前,可以先在电脑上试试它的效果如何;如果你是开发人员,...

    android开发——简易计算器的设计报告.doc

    一、实训目的 1、了解Android系统,学会Android开发环境的搭建。 2、了解Eclipse,学会用Eclipse和Java 开发一个Android程序。 3、进一步巩固课堂上所学到的知识,深刻把握Java语言的重要概念及其面向对象的特性 ,...

    密码管家 - 最强大的密码管理助手

    2. 安装时为什么显示要使用很多的权限? 实际上密码管家自身只请求了两个权限,开机启动权限(开机时自动运行)和存储卡读写权限(导出和导入),别的权限皆为嵌入的广告SDK所要求使用的。 【特别建议】 1. 无论是新...

    adb1.0.26包含fastboot.exe

    ADB,即 Android Debug Bridge,它是 Android 开发/测试人员不可替代的强大工具,也是 Android 设备玩家的好玩具。 注:有部分命令的支持情况可能与 Android 系统版本及定制 ROM 的实现有关。 基本用法 命令语法 ...

    corona:Solar2D游戏引擎主存储库(以前为Corona SDK)

    这意味着您可以一次创建项目并将其发布到多种设备,包括Apple iPhone和iPad,Android手机和平板电脑,Amazon Fire,Mac Desktop,Windows Desktop,Linux,HTML5甚至是连接的电视,例如Apple TV,Amazon Fire TV和...

    Clean_Master_VIP_v7.4.8.apk

    最值得信赖和最安全的Android优化器,垃圾文件清理器,速度增强器,省电工具和免费的防病毒应用程序,拥有超过7.4亿部手机。 Clean Master(Boost和AppLock)有助于加速Ram并清理垃圾和缓存文件!Clean Master...

    密码管家 - 最强大的密码管理助手(2012年2月2日重新上传v2.5.0)

    2. 安装时为什么显示要使用很多的权限? 实际上密码管家自身只请求了两个权限,开机启动权限(开机时自动运行)和存储卡读写权限(导出和导入),别的权限皆为嵌入的广告SDK所要求使用的。 【特别建议】 1. 无论是新...

    Echo:Echo是一款简单易用的音乐播放器应用程序,使用具有强大均衡器的开源代码设计。 它是免费使用和下载。 它根据名称和添加日期对音乐进行排序。 支持几乎所有音乐格式-Dating app source code

    摇动即可更改功能:摇动手机即可更改播放曲目支持所有类型的音频文件强大的开源均衡器耳机/蓝牙控件通过将曲目添加到收藏夹来创建自定义播放列表智能记忆功能会自动应用以前选择的控件用户友好-出色的用户界面和UX ...

    Nero 2014 Platinum 15.0.08500 Final (keygen included)

    包含了对最新和最强大的 iOS、Android 和 Windows 8 智能手机和平板电脑等移动设备的绝佳支持 为最常用的移动设备提供预配置的配置文件 选择Nero 2014 Platinum的理由: 最佳翻录和转换 一键单击 Nero Disc to ...

Global site tag (gtag.js) - Google Analytics