本文来自:安卓航班网

 一、重要包的描述:

        android.app :提供高层的程序模型、提供基本的运行环境
        android.content :包含各种的对设备上的数据进行访问和发布的类
        android.database :通过内容提供者浏览和操作数据库
        android.graphics :底层的图形库,包含画布,颜色过滤,点,矩形,可以将他们直接绘制到屏幕上.
        android.location :定位和相关服务的类
        android.media :提供一些类管理多种音频、视频的媒体接口
        android.net :提供帮助网络访问的类,超过通常的java.net.* 接口
        android.os :提供了系统服务、消息传输、IPC 机制
        android.opengl :提供OpenGL 的工具
        android.provider :提供类访问Android 的内容提供者
        android.telephony :提供与拨打电话相关的API 交互
        android.view :提供基础的用户界面接口框架
        android.util :涉及工具性的方法,例如时间日期的操作
        android.webkit :默认浏览器操作接口
        android.widget :包含各种UI 元素(大部分是可见的)在应用程序的屏幕中使用

        二、虚拟机Dalvik

        Dalvik 和标准Java 虚拟机(JVM)首要差别是:Dalvik 基于寄存器,而JVM 基于栈。基于寄存器的虚拟机对于更大的程序来说,在它们编译的时候,花费的时间更短。

        Dalvik 和Java 运行环境的区别是:Dalvik 经过优化,允许在有限的内存中同时运行多个虚拟机的实例,并且每一个Dalvik 应用作为一个独立的Linux 进程执行。独立的进程可以防止在虚拟机崩溃的时候所有程序都被关闭。

        三、Android 的相关文件类型

        Java 文件-----应用程序源文件
        android 本身相当一部分都是用java 编写而成(基本上架构图里头蓝色的部份都是用Java 开发的),android 的应用必须使用java 来开发。

        Class 文件------Java 编译后的目标文件
        不像J2se,java 编译成class 就可以直接运行,android 平台上class 文件不能直接在android 上运行。由于Google使用了自己的Dalvik 来运行应用,所以这里的class 也肯定不能在AndroidDalvik 的java 环境中运行,android的class 文件实际上只是编译过程中的中间目标文件,需要链接成dex 文件后才能在dalvik 上运行。

        Dex 文件-----Android 平台上的可执行文件
        Android 虚拟机Dalvik 支持的字节码文件格式Google 在新发布的Android 平台上使用了自己的Dalvik 虚拟机来定义,这种虚拟机执行的并非Java 字节码,而是另一种字节码:dex 格式的字节码。在编译Java 代码之后,通过Android 平台上的工具可以将Java 字节码转换成Dex 字节码。

       Apk 文件-------Android 上的安装文件
       Apk 是Android 安装包的扩展名,一个Android 安装包包含了与某个Android 应用程序相关的所有文件。apk文件将AndroidManifest.xml 文件、应用程序代码(.dex 文件)、资源文件和其他文件打成一个压缩包。一个工程只能打进一个.apk 文件。

        四、关于应用程序
        以hellowo rld为例,编译出来的class文件,放置在\bin\oms\samples\home中。编译出来的apk在bin文件中,可以用winrar打开,组织结构类似工程。

        运行环境描述   .classpath内容为:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWO RK"/>
<classpathentry kind="con" path="o rg.eclipse.jdt.USER_LIBRARY/OPhone"/>
<classpathentry kind="output" path="bin"/>
</classpath>

       工程配置文件   .project内容为:

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>HomeAPIDemoActivity</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>com.android.ide.eclipse.adt.ResourceManagerBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>com.android.ide.eclipse.adt.PreCompilerBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>o rg.eclipse.jdt.co re.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>com.android.ide.eclipse.adt.ApkBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>com.android.ide.eclipse.adt.AndroidNature</nature>
<nature>o rg.eclipse.jdt.co re.javanature</nature>
</natures>
</projectDescription>

原文地址:http://www.apkway.com/forum.php?mod=viewthread&tid=1432&extra=page%3D1

posted on 2011-07-11 20:54  泉と緣  阅读(302)  评论(0编辑  收藏  举报