当前位置:首页 > 谈天说地

Android系统服务概览

34资源网2021-12-20542

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解析等的核心实现。虽然名为activity的manager 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

一般是ring和vibrate的服务程序

  • 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等合作起作用,主要负责监听并广播device的mount/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 service是google提供的包,没有源代码,源码只有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服务基本上都是native的services,mediaserver进程也是在init.rc中启动的,它不是一个daemon进程,这点容易搞混。他也是和systemserver进程类似的系统服务进程,提供应用进程的rpc调用的真正服务代码所运行的位置。其服务都是和媒体录播放有关,主要有三个服务:

  • audioflinger

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

  • mediaplayerservice

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

  • cameraservice

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

audiopolicyservice

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

到此这篇关于android系统服务概览的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持萬仟网。

看完文章,还可以扫描下面的二维码下载快手极速版领4元红包

快手极速版二维码

快手极速版新人见面礼

除了扫码领红包之外,大家还可以在快手极速版做签到,看视频,做任务,参与抽奖,邀请好友赚钱)。

邀请两个好友奖最高196元,如下图所示:

快手极速版邀请好友奖励

扫描二维码推送至手机访问。

版权声明:本文由34楼发布,如需转载请注明出处。

本文链接:https://www.34l.com/post/3707.html

分享给朋友:

相关文章

lenovo手机网上哪里买(联想旗舰店官网商城)

lenovo手机网上哪里买(联想旗舰店官网商城)

昨晚联想拯救者电竞手机 2 Pro 正式发布,搭载骁龙 888 旗舰芯片、八指操控体系,配备 6.92 英寸 AMOLED 144Hz 三星定制电竞无孔屏幕,5500mAh 容量电池,堪称 “堆料狂魔”,这款手机于今日 10:00 正式开售…

mac地址的作用是什么(理解mac地址的作用实验报告)

mac地址的作用是什么(理解mac地址的作用实验报告)

我们上网时会发现电子设备同时有IP地址和MAC地址,为什么上网会需要两个地址呢?…

为了让米粉买到好看的手机壳,雷军投了一家“潮玩工厂”

为了让米粉买到好看的手机壳,雷军投了一家“潮玩工厂”

小米团队花了几个月时间,想要找到一个能DIY打印手机壳的设备却没有找到。直到2020年底,他们在西单大悦城看到玩壳工厂。 “用户需求一直存在,早前也有不少团队尝试开发这样的设备,但都失败了。”玩壳工厂创始人CEO韩冰告诉创业邦。 如今,玩壳…

火了12年,“假洋鬼子”终于翻车了

火了12年,“假洋鬼子”终于翻车了

图源:摄图网 编者按:本文来自微信公众号格隆汇财经热点(ID:glh_finance),作者:万连山,创业邦经授权转载 你肯定看到过这样一幅广告:一个与乔布斯颇有几分相似的神秘洋老头,戴着金丝眼镜,有时叼着烟斗,有时没有,出现在各大高铁站和…

Hey,Siri 背后,隐藏着一个大问题

Hey,Siri 背后,隐藏着一个大问题

编者按:本文来自腾讯研究院(cyberlawrc),作者:白鸽,创业邦经授权发布,封面图来自图虫。 豆瓣平台上有一个名叫“人机之恋”的小组,组内成员分享的大部分内容,都是一款聊天软件 Replika 的使用心得。通过这款软件,用户可以与自己…

ui界面模板素材怎么做(ui制作网页模板)

ui界面模板素材怎么做(ui制作网页模板)

不管是设计手机U、网页UI、软件UI还是游戏界面,都是在设计款产品。产品的气质是设计赋予的。设计产品的气质,需要设计师忠于产品目标和产品方向,形式服从于功能。 一款APP的气质应该具备独特的、鲜明的风格特点,能够增加APP的吸引力与用户黏…