文档详情

Android系统原理与开发要点详解-05_Android的JAVA虚拟机和JAVA环境.pdf.pdf

发布:2017-09-11约1.86万字共31页下载文档
文本预览下载声明
Android 的 JAVA 虚拟机和 JAVA 环境 Android 的 JAVA 虚拟机和 JAVA 环境  第一部分 Dalvik 虚拟机  第二部分 Android 的 JAVA 程序环境  第三部分 JNI 的使用  第四部分系统服务的 JAVA 部分 第一部分 Dalvik 虚拟机 Dalvik 是 Android 程序的虚拟机,它执行 (.dex )的 Dalvik 可执行文件,该格式文件针对小内 存使用做了 优化。同时虚拟机是基于寄存器的,所有 的类都经由 JAVA 编译器编译,然后通过 SDK 中 的 dx 工具转化成 .dex 格式由虚拟机执行。 Dalvik 虚拟机依赖于 linux 内核的一些功能,比如 线程机制和底层内存管理机制。 第一部分 Dalvik 虚拟机 Dalvik 虚拟机的代码路径: dalvik/ ,其中包含了 目标机和主机的内容。 vm 目录中的内容是虚拟机的实现,由本地代码实 现(包含了部分的汇编代码),其编译的结果为共享库 libdvm.co 。 libcore 目录是一个提供了对基础JAVA 实现支持的 代码目录,包含了 C 语言代码和 JAVA 代码,编译的 结果为 JAVA 的包 core.jar 。 第一部分 Dalvik 虚拟机 nativehelper 库是一个工具库,用于注册 JAVA 本地 调用的函数,在其他的代码中需要使用 JNI 从本地层次 向JAVA 层次提供功能的时候,需要使用这个库。 nativehelper 库的代码路径为: dalvik/libnativehelper 。连接静态库libjavacore.a ,生成 动态库 libnativehelper.so 。 nativehelper 个库的头文件的路径为: libnativehelper/include/nativehelper/jni.h :基于JNI 标 准的头文件 libnativehelper/include/nativehelper/JNIHelp.h :提供 JNI 注册功能的头文件 第二部分 Android 的 JAVA 程序环境 Android 的 API 的层次结构:  JAVA 标准 API  JAVA 扩展 API (javax包)  企业和组织提供的 java 类库( org 包)  Android 的各种包 相比标准 JAVA ,Android 中的JAVA API 名称相同的 API 功能,但这些 API 并不 是一个全集。 第二部分 Android 的 JAVA 程序环境 Android 中的JAVA 的库主要为 android 包 及其子包,其中核心的包的目录为: fr
显示全部
相似文档