`
runfeel
  • 浏览: 904220 次
文章分类
社区版块
存档分类
最新评论

Android的系统服务一览

 
阅读更多

System_Server进程

运行在system server进程中的服务比较多,这是整个android框架的基础

Native服务

SurfaceFlinger

这是framebuffer合成的服务,将各个应用程序及应用程序中的逻辑窗口图像数据(surface)合成到一个物理窗口中显示(framebuffer)的服务程序

Java服务:

这部分的服务大部分都有一个供应用进程使用的manager类,这就是一个RPC调用,用户通过调用xxxManager的方法,实际上被Binder给迁移到system_server进程中对应的xxxManagerService中对应的方法,并将结果再通过binder带回。

1 EntropyService

熵服务,周期性的加载和保存随机信息。主要是linux开机后,/dev/random的状态可能是可预知的,这样一些需要随机信息的应用程序就可能会有问题。这个无需提供应用程序接口。

2 PowerManagerService –> PowerManager

Android 的电源管理也是很重要的一部分。比如在待机的时候关掉不用的设备,待机时屏幕和键盘背光的关闭,用户操作的时候该打开多少设备等等。

3. ActivityManagerService->ActivityManager

这个是整个Android framework框架中最为核心的一个服务,管理整个框架中任务、进程管理, Intent解析等的核心实现。虽然名为ActivityManager Service,但它管辖的范围,不只是Activity,还有其他三大组件,和它们所在的进程。也就是说用户应用程序的生命管理,都是由他负责的。

4. TelephonyRegistry->TelephonyManager

电话注册、管理服务模块,可以获取电话的链接状态、信号强度等等。<可以删掉,但要看的大概明白>

5. PackageManagerService -> PackageManager

包括对软件包的解包,验证,安装以及升级等等,对于我们现在不能安装.so文件的问题,应该先从这块着手分析原因。

6. AccountManagerService -> AccountManager

A system service that provides account, password, and authtoken management for all

accounts on the device

7 ContentService -> ContentResolver

内容服务,主要是数据库等提供解决方法的服务。

8 BatteryService

监控电池充电及状态的服务,当状态改变时,会广播Intent

9 HardwareService

一般是ringvibrate的服务程序

10 SensorService -> SensorManager

管理Sensor设备的服务,负责注册client设备及当client需要使用sensor时激活Sensor

11 WindowManagerService -> WindowManager -> PhoneWindowManager

ActivityManagerService高度粘合

窗口管理,这里最核心的就是输入事件的分发和管理。

12 AlarmManagerService -> AlarmManager

闹钟服务程序

13 BluetoothService -> BluetoothDevice

蓝牙的后台管理和服务程序

14 StatusBarService -> StatusBarManager

负责statusBar上图标的更新、动画等等的服务,服务不大。

15 ClipboardService -> ClipboardManager

和其他系统的clipBoard服务类似,提供复制黏贴功过。

16 InputMethodManagerService -> InputMethodManager

输入法的管理服务程序,包括何时使能输入法,切换输入法等等。

17 NetStatService

手机网络服务

18 ConnectivityService -> ConnectivityManager

网络连接状态服务,可供其他应用查询,当网络状态变化时,也可广播改变。

19 AccessibilityManagerService-> AccessibilityManager

这块可能要仔细看一下,主要是一些View获得点击、焦点、文字改变等事件的分发管理,对整个系统的调试、问题定位等,也需要最这个服务仔细过目一下。

20 NotificationManagerService -> NotificationManager

负责管理和通知后台事件的发生等,这个和statusbar胶黏在一起,一般会在statusbar上添加响应图标。用户可以通过这知道系统后台发生了什么事情。

21 MountService

磁盘加载服务程序,一般要和一个linux daemon程序如vold/mountd等合作起作用,主要负责监听并广播devicemount/unmount/bad removal等等事件。

22 DeviceStorageMonitorService

监控磁盘空间的服务,当磁盘空间不足10%的时候会给用户警告

23 LocationManagerService -> LocationManager

要加入GPS服务等,这部分要细看,现在应用中的navigation没响应,可以从此处着手看一下

24 SearchManagerService -> SearchManager

The search manager service handles the search UI, and maintains a registry of searchable activities.

25 Checkin Service(FallbackCheckinService)

貌似checkin servicegoogle提供的包,没有源代码,源码只有fallbackCheckinService

26 WallpaperManagerService -> WallpaperManager
管理桌面背景的服务,深度定制化桌面系统,需要看懂并扩展<同时要兼容>这部分

27 AudioService -> AudioManager

AudioFlinger的上层管理封装,主要是音量、音效、声道及铃声等的管理

28 HeadsetObserver

耳机插拔事件的监控小循环

29 DockObserver

如果系统有个座子,当手机装上或拔出这个座子的话,就得靠他来管理了

30 BackupManagerService -> BackupManager

备份服务

31 AppWidgetService -> AppWidgetManager

Android可以让用户写的程序以widget的方式放在桌面上,这就是这套管理和服务的接口

32 StatusBarPolicy

管理哪个图标该在status bar上显示的策略。

mediaServer服务进程

MediaServer服务基本上都是nativeservicesmediaServer进程也是在init.rc中启动的,它不是一个daemon进程,这点容易搞混。他也是和systemserver进程类似的系统服务进程,提供应用进程的RPC调用的真正服务代码所运行的位置。其服务都是和媒体录播放有关,主要有三个服务:

AudioFlinger

声音的录播放服务,包括混音等

MediaPlayerService

提供媒体播放服务,opencore是这块的核心模块,对java端的接口在mediaplayer.java

CameraService

提供camera的录制、preview等功能的服务

AudioPolicyService

主要功能有检查输入输出设备的连接状态及系统的音频策略的切换等。

分享到:
评论

相关推荐

    android开发入门教程

    2.1.1 Android开发系统要求 2.1.2 Android软件开发包 2.1.3 其他注意事项 2.2 Windows开发环境搭建 2.2.1 JDK、Eclipse、AndroidSDK软件安装 2.2.2 SDK的家在哪里——设定AndroidSDKHome 2.2.3 真的准备好了吗——...

    android开发入门与实战(下)

    4.3.2 AndroidMarket特色应用一览 4.4 你也可以做东家——申请Market账号 4.4.1 卖东西要先入伙——准备工作 4.4.2 入伙过程——申请 4.5 开张了——在Market上发布应用 4.5.1 发布时可能遇到的错误 4.5.2 卖东西也...

    基于安卓系统智能电视的病人一览表系统.pdf

    基于安卓系统智能电视的病人一览表系统.pdf

    《Google Android开发入门与实战》.pdf

    4.3.2 android market特色应用一览 38 4.4 你也可以做东家——申请market账号 43 4.4.1 卖东西要先入伙——准备工作 43 4.4.2 入伙过程——申请 44 4.5 开张了——在market上发布应用 45 4.5.1 发布...

    android开发入门与实战(上)

    4.3.2 AndroidMarket特色应用一览 4.4 你也可以做东家——申请Market账号 4.4.1 卖东西要先入伙——准备工作 4.4.2 入伙过程——申请 4.5 开张了——在Market上发布应用 4.5.1 发布时可能遇到的错误 4.5.2 卖东西也...

    Google.Android开发入门与实战

    4.3.2 AndroidMarket特色应用一览 4.4 你也可以做东家——申请Market账号 4.4.1 卖东西要先入伙——准备工作 4.4.2 入伙过程——申请 4.5 开张了——在Market上发布应用 4.5.1 发布时可能遇到的错误 4.5.2 卖东西也...

    Google Android开发入门与实战的代码

    4.3.2 Android Market特色应用一览 38 4.4 你也可以做东家——申请Market账号 43 4.4.1 卖东西要先入伙——准备工作 43 4.4.2 入伙过程——申请 44 4.5 开张了——在Market上发布应用 45 4.5.1 发布...

    浅谈Android系统的基本体系结构与内存管理优化

    Android运行环境一览 Android基于linux内核,面向移动终端的操作系统。主要包括以下几个方面: Application Framework: 这一层为应用开发者提供了丰富的应用编程接口,如 Activity Manager,Content Provider,...

    同花顺手机炒股 v8.82.01

    专为android系统设计,全新手滑模式,高速行情,稳定系统,安全交易,让您投资决策、下单买卖先人一步! 支持沪深证券、权证,基金,外汇,港股(延时),期货,股指期货等多品种证券行情查询; 采用和电脑相同加密...

    必应词典 v 4.0

    适用系统:Android 2.3.3以上 开发者:微软中国 更新时间:2014-12 应用简介 必应词典由微软官方出品,提供简洁快速、释义丰富的本地/离线查词功能。单词挑战、必应电台、我爱说英语等应用,更为学生族、白领等中...

    java实现校园一卡通源码-THUCourseHelper:面向清华大学学生的校园课程和日程管理APP

    一款真正懂清华学生的android课程管理APP 国内CDN高速下载链接 此链接会始终保持为最新版本(即Github代码库的最近一次Release的版本)。如您有需要获取老版本,请到Github代码库的Release列表中自行获取。 github...

    YiLan:使用Rxjava+Retrofit写的新闻类App,良好的使用了Mvp架构。配合MD设计原理。大学课程设计 大学大作业 大学毕业设计作品

    一览 新闻 已改为Mvp架构,优化并添加了新功能。实际上这是一个大学课程设计的大作业,你可以参看飞快的完成他。是不是一小时那要看你的代码功底了。新闻列表侧边栏新闻详情美女图片列表美女图片详情 感谢以下开源...

Global site tag (gtag.js) - Google Analytics