Android体系与系统架构——Android群英传学习笔记

1、Android大致分为四层:

①Linux内核层:Android最底层最核心的部分,Linux层包含了Android系统的核心服务,包括硬件驱动,进程管理,安全系统等等。
②库和运行时
③FramWork层
④应用层

Dalvik与ART:Dalvik包含了一整套的Android运行环境虚拟机,每个App都会分配来保证互相之间不受干扰,并保持独立。

使用NDK开发主要构成:AndroidManifest,DalvikClasses
ResourceBundle, Libraries&JNI
Java开发的App的主要构成: AndroidManifest,DalvikClasses
ResourceBundle

2、Android App组件架构

四大组件:Activity、BroadCastReciever、ContentProvider、Service
如何协同合作:Activity负责向用户展示信息和处理结果,而信息可以通过资源获取,也可以通过ContentProvider来获取,或者是Service从后台计算、下载、处理的结果。
组件与组件之间通过Intent来通信、传递信息、交换数据。

3、Context

Activity、Service、Application都是继承自Context。
Context被创建的时间点:创建Application、创建Activity、创建Service
获取Context对象:直接使用this(在匿名内部类中必须指定XXXXActivity.this),通过getApplicationContext()方法获取整个App的Context。

4、Android系统源代码目录与系统目录

①Android系统源代码目录:

  • Makefile
  • bionic (bionic C库)
  • bootable (启动引导相关代码)
  • build (存放系统编译规则等基础开发包配置)
  • cts (Google兼容性测试标准)
  • dalvik (dalvik 虚拟机)
  • development (应用程序开发相关)
  • external (android使用的一些开源的模块)
  • vendor (厂商定制代码)
  • frameworks (Framework框架核心)
  • out (编译完成后的代码输出目录)
  • hardware (厂商硬件适配层HAL代码)
  • packages (应用程序包)
  • prebuilt (x86和arm架构下预编译资源)
  • sdk (sdk及模拟器)
  • system (底层文件系统库、应用及组件)

②Android系统目录

•/system/app/这里面放的是一些系统的App
•/system/bin/这里面主要放的是Linux自带的组件
•/system/build.prop这里记录的是系统的属性信息
•/system/fonts/系统字体存放目录root后可下载TTF格式字体替换原字体,达到修改系统字体的效果
•/system/framework/系统的核心文件、框架层•/system/lib/存放几乎所有的共享库(.so)文件
•/system/media/该目录用来保存系统提示音、系统铃声
•/system/usr/该目录用来保存用户的配置文件
•/data/data/这里包含了App的数据信息、文件信息、数据库信息等
•/data/app/这个目录包含了用户安装的App或者升级的App
•/data/system/这个目录包含了手机的各项系统信息
•/data/misc/这个目录保存了大部分的Wi-Fi、VPN信息

查看Android源代码的网站

你可能感兴趣的:(Android体系与系统架构——Android群英传学习笔记)