Framework的范围
Framework负责APPLICATION FRAMEWORK、ANDROID RUNTIME和LIBRARIES三部分。
a) 系统Manager和Service相关内容
b) 系统接口和jni相关内容
c) 系统功能相关内容(watchdog、vold、binder等)
d) 虚拟机dalvik、art
e) 系统so库相关内容
f) CTS、GTS等预分析
g) Monkey预分析
h) 系统稳定性问题(系统ANR、冻屏、重启、蓝屏等)
i) 系统性能问题
framework基础语言基础
Java、C++、C技术基础:进程间通信,多线程,jni,linux相关知识,binder
系统服务
SystemServer 是framework中非常重要的一个进程,它是在虚拟机启动后运行的第一个java进程,SystemServer启动其他系统服务,这些系统服务都是以一个线程的方式存在于SystemServer进程中。
a) EntropyService 提供伪随机数
b) PowerManagerService 电源管理服务
c) ActivityManagerService 最核心的服务之一,管理Activity,简称AMS
d) TelephonyRegistry 通过该服务注册电话模块的事件响应,比如重启、关闭、启动等
e) PackageManagerService 程序包管理服务
f) AccountManagerService 账户管理服务,是指联系人账户,而不是Linux系统的账户
g) ContentService ContentProvider服务,提供跨进程数据交换
h) BatteryService 电池管理服务
i) LightsService 自然光强度感应传感器服务
j) VibratorService 震动器服务
k) AlarmManagerService 定时器管理服务,提供定时提醒服务
l) WindowManagerService Framework最核心的服务之一,负责窗口管理
m) BluetoothService 蓝牙服务
n) DevicePolicyManagerService 提供一些系统级别的设置及属性
o) StatusBarManagerService 状态栏管理服务
p) ClipboardService 系统剪切板服务
q) InputMethodManagerService 输入法管理服务
r) NetStatService 网络状态服务
s) NetworkManagementService 网络管理服务
t) ConnectivityService 网络连接管理服务
u) AccessibilityManagerService 辅助管理程序截获所有的用户输入,并根据这些输入给用户一些额外的反馈,起到辅助的效果
v) MountService 挂载服务,可通过该服务调用Linux层面的mount程序
w) NotificationManagerService 通知栏管理服务,Android中的通知栏和状态栏在一起,只是界面上前者在左边,后者在右边
x) DeviceStorageMonitorService 磁盘空间状态检测服务
y) LocationManagerService 地理位置服务
z) SearchManagerService 搜索管理服务
aa) DropBoxManagerService 通过该服务访问Linux层面的Dropbox程序
ab) WallpaperManagerService 墙纸管理服务,墙纸不等同于桌面背景,在View系统内部,墙纸可以作为任何窗口的背景
ac) AudioService 音频管理服务
ad) BackupManagerService 系统备份服务
ae) AppWidgetService Widget服务
af) RecognitionManagerService 身份识别服务
ag) DiskStatsService 磁盘统计服务