理解android技术

 技术层面上讲,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语言的其它虚拟机..."。

剩下的,就是拭目以待......

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值