'adb shell启动/停止'做什么?

Cyk*_*ker 28 android adb

做什么adb shell startadb shell stop实际做什么?

描述

我认为他们打电话/system/bin/start/system/bin/stop.但是这两个可执行文件并没有给出任何关于它们的作用的线索.在真实设备上测试时,我发现合子过程已启动并停止.所以这两个命令似乎控制着Android运行时(对应于下图中的黄色和蓝色部分).

Android架构

但是使用这两个命令启动/停止了哪些确切的进程/服务

hum*_*.js 12

基本上,所有Android服务都重新启动; 那些创建和注册的人SystemServer.java.这在"受精卵的背景"中被称为.是的,Zygote被阻止了.

ServiceManager在Android中注册的所有服务都将被删除ServiceManager.要重新启动它们,请执行adb shell start.

还要注意,这SystemServer是由Zygote开始的,所以init.rc告诉如果Zygote停止了,那么甚至SystemServer必须停止.甚至SurfaceFlinger死了,因为它是从SystemServer本地开始的.


Ale*_* P. 1

在您的设备上运行此命令

grep ^service /init*rc
Run Code Online (Sandbox Code Playgroud)

  • 这如何解决这个问题? (7认同)