设为首页 加入收藏

TOP

Android框架简介
2014-11-24 12:16:33 来源: 作者: 【 】 浏览:0
Tags:Android 框架 简介

一、Dalvik虚拟机


Dalvik是android的程序的java虚拟机,代码在dalvik/下,


./
|-- Android.mk
|-- CleanSpec.mk
|-- MODULE_LICENSE_APACHE2
|-- NOTICE
|-- README.txt
|-- dalvikvm 虚拟机的实现库
|-- dexdump
|-- dexlist
|-- dexopt
|-- docs
|-- dvz
|-- dx
|-- hit
|-- libcore
|-- libcore-disabled
|-- libdex
|-- libnativehelper 使用JNI调用本地代码时用到这个库
|-- run-core-tests.sh
|-- tests
|-- tools
`-- vm


二、android的java框架


android层次中第3层是java框架,第四层就是java应用程序。


android的java类代码,主要是在frameworks/base/core/java/下,


./
|-- android
|-- com
|-- jarjar-rules.txt
`-- overview.html


我们再看一下frameworks/base/目录


./
|-- Android.mk
|-- CleanSpec.mk
|-- MODULE_LICENSE_APACHE2
|-- NOTICE
|-- api
|-- awt
|-- build
|-- camera
|-- cmds
|-- common
|-- core
|-- data
|-- docs
|-- graphics
|-- include
|-- keystore
|-- libs
|-- location
|-- media
|-- native
|-- obex
|-- opengl
|-- packages
|-- preloaded-classes
|-- sax
|-- services
|-- telephony
|-- test-runner
|-- tests
|-- tools
|-- vpn
`-- wifi


这里也有android的java框架代码。


三、JNI


在android中,通过JNI,java可以调用C写的代码,主要的实现是在frameworks/base/core/jni,通过查看Android.mk,我们可以看到最后生成了libandroid_runtime.so,具体实现JNI功能需要上面我们介绍的libnativehelper.so,


四、系统服务之java


1、binder,提供android的IPC功能


2、servicemanager,服务管理的服务器端


3、系统进程zygote,负责孵化所有的新应用


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Linux GCC下sizeof内存情况分析 下一篇Android使用JNI实现Java与C之间传..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Redis 分布式锁全解 (2025-12-25 17:19:51)
·SpringBoot 整合 Red (2025-12-25 17:19:48)
·MongoDB 索引 - 菜鸟 (2025-12-25 17:19:45)
·What Is Linux (2025-12-25 16:57:17)
·Linux小白必备:超全 (2025-12-25 16:57:14)