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

Android系列教程(一)

 
阅读更多

写本文章之前,首先有如下声明:

1.作者水平:从事java开发五年,从事android开发一年。移动平台的做过的产品如下:http://www.caifutong.com.cn/phone/

2.文章特点:通俗的语言,尽量少使用专业术语,不讲套话。比较适合有较好java基础,但是对android平台不太熟悉的朋友。

3.欢迎留言,欢迎指出文中的bug。

首先是开发环境的配置,由于网上已经有太多的资料,所以就不专门讲解。只是给出以下链接,以供参考:http://hzlitai.com.cn/article/ARM11/SYSTEM/android.htmlhttp://snowman.blog.51cto.com/307956/136908

Android平台的概况,背景,发展渊源,未来也就不讲了,那是用来吹牛的,不是来编程的。下面开始说明Android的SDK,Android SDK支持大多数javaSE,但是不支持java的图形库(AWT,Swing)[tips:很好理解,J2ME也不支持,J2EE也不支持,J2SE的图形库太落后了],对于AWT和Swing,Android拥有自己的UI框架。

读者看到现在,应该知道Android程序开发的主流语言是java(也可以使用其他语言开发),那么,使用java开发,必然涉及虚拟机。而Android程序运行在专门的虚拟机上,叫做Dalvik VM(这里也挺容易理解的,因为平台不同,各个平台都需要针对自己平台对java代码做出优化,而优化这一步,就是虚拟机完成的,所以各个平台的虚拟机不同。比如J2ME平台就是所谓的KVM虚拟机),DVM对java代码,xml资源文件,图片等一系列android元素做了大量的优化处理。(说点题外话,对编程用处不大,但是面试的时候可以唬唬面试官。DVM对程序所作的优化主要分为以下几点:1.优化编译后的.class文件,得到.dex文件,这就让程序更小。2.使用寄存器而不是栈作为数据存放单元,使得程序指令减少,大大提高效率。3.不支持即时编译JIT,后续版本可能支持。4.android程序中使用了大量的xml文件,大家都知道,xml文件就代表了数据的冗余,但是DVM对xml做了优化,就不存在类似的问题了。)

给读者一个简图,让大家对android平台的系统架构有一个简单的认识:

程序:就是我们自己编写的android的项目,相对于javaSE上的普通java程序。

Android SDK:类似于javaSE上的JDK。

Dalvik VM:类似于javaSE上的JVM。

C库:核心C库,一般情况下,有虚拟机就有这玩意,因为虚拟机和操作系统打交道还是有麻烦。

linux:操作系统

第一篇就写到这里,下一篇概括的说明android的基本程序元素,也就是我们编程最常用的一些东西。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics