|  | ||
|---|---|---|
| .. | ||
| include/minadbd | ||
| Android.bp | ||
| AndroidTest.xml | ||
| README.md | ||
| fuse_adb_provider.cpp | ||
| fuse_adb_provider.h | ||
| fuse_adb_provider_test.cpp | ||
| minadbd.cpp | ||
| minadbd_services.cpp | ||
| minadbd_services.h | ||
| minadbd_services_test.cpp | ||
		
			
				
				README.md
			
		
		
			
			
		
	
	minadbd
minadbd is analogous to the regular adbd, but providing the minimal services to support
recovery-specific use cases. Generally speaking, adbd = libadbd + libadbd_services, whereas
minadbd = libadbd + libminadbd_services.
Although both modules may be installed into the recovery image, only one of them, or none, can be active at any given time.
- 
The start / stop of adbdis managed via system propertysys.usb.config, when setting toadbornonerespectively. Upon starting recovery mode,adbdis started in debuggable builds by default; otherwiseadbdwill stay off at all times in user builds. See the triggers inbootable/recovery/etc/init.rc.
- 
minadbdis started byrecoveryas needed.- When requested to start minadbd,recoverystopsadbdfirst, if it's running; it then forks and execsminadbdin a separate process.
- minadbdtalks to host-side- adbserver to get user requests.- minadbdhandles some requests directly, e.g. querying device properties for rescue service.
- minadbdcommunicates with- recoveryto fulfill requests regarding package installation. See the comments in- bootable/recovery/install/adb_install.cppfor the IPC protocol between- recoveryand- minadbd.
 
- Upon exiting minadbd,recoveryrestartsadbdif it was previously running.
 
- When requested to start