代码路径:system\core\adb
小结:
1.adb root 命令设置了service.adb.root这个属性,重启了adbd,我们再从init.rc中看下,
- on property:service.adb.root=1
- write /sys/class/android_usb/android0/enable 0
- restart adbd
- write /sys/class/android_usb/android0/enable 1
2.主要看adbd_daemon 的 adb_main函数,得到service.adb.root和ro.debuggable都为1可以adb root,should_drop_privileges函数返回false,就不会讲adbd降级为shell,就是root了
3.adbd启动在init.rc中
- # adbd is controlled via property triggers in init.<platform>.usb.rc
- service adbd /system/bin/adbd --root_seclabel=u:r:su:s0
- class core
- socket adbd stream 660 system system
- disabled
- seclabel u:r:adbd:s0
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/q1183345443/article/details/78063748