论坛首页 移动开发技术论坛

理解android技术

浏览 5703 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-11-22  
技术层面上讲,android是一个基于linux的java虚拟机。或者这样说还不太完全,它在linux层次和java api层次上也作出了相当的变动。

虽然还没有能拿到全面的资料进行分析,但是从其层次上已经能看出,android抛弃了在linux层上进行扩展的需求,而把所有的用户扩展放到了java的层次上。

传统手机对于java的支持是建立在cldc和midp基础上的,cldc相当于jre,midp相当于一个扩展api集如JMF等。这种结构上的java程序,就像操作系统中的一个应用程序,它虽然能解决一些应用,但是却很难全面的操控设备。midp虽然提供了一个通用的接口,但是这个接口却也限制了java更有力的进行扩展。

android的变动就是突破了midp的限制,把一些操作系统才应该有的特性搬到了java层中,让java能够更加全面去控制系统和设备。基于这种架构,当以后出现新的设备的时候,只需要在linux层支持这种设备(写driver),然后在java层中直接扩展api即可,不用再去管midp是否支持。

这样一来,基本上是推倒了sun的java上层架构,让java更接近于硬件的底层。不过,与java的精神——一次编译,处处运行 肯定就是有矛盾的了。

牵强一点说,这是一个“在java虚拟机上跑得其他语言”的对立——"支持java语言的其它虚拟机..."。

剩下的,就是拭目以待......
论坛首页 移动开发技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics