adb打开关闭

adb涉及到的文件
system/core/rootdir/init.rc 关于adbd服务的配置
# adbd is controlled via property triggers in init..usb.rc
service adbd /sbin/adbd --root_seclabel=u:r:su:s0
class core
socket adbd stream 660 system system
disabled
seclabel u:r:adbd:s0

# adbd on at boot in emulator
on property:ro.kernel.qemu=1
start adbd

system/core/rootdir/init.usb.rc 关于adb端口启动配置
# adb only USB configuration
# This is the fallback configuration if the
# USB manager fails to set a standard configuration
on property:sys.usb.config=adb
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 18d1
write /sys/class/android_usb/android0/idProduct 4EE7
write /sys/class/android_usb/android0/functions ${sys.usb.config}
write /sys/class/android_usb/android0/enable 1
start adbd
setprop sys.usb.state ${sys.usb.config}

......
on property:sys.usb.config=accessory
...
start adbd

还有device目录中,2个文件需要修改
device/DEDOU/msm8916-common/ramdisk/etc/init.qcom.usb.rc
在此文件中,是在对sub端口识别时,识别adb进行配置,如
on property:sys.usb.config=mtp,adb
stop adbd
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 05C6
write /sys/class/android_usb/android0/idProduct 9039
write /sys/class/android_usb/android0/functions mtp,adb
write /sys/class/android_usb/android0/enable 1
start adbd #启动adbd服务
setprop sys.usb.state ${sys.usb.config}
此处是对usb端口不同情况进行配置,必须实现

在system.prop对adb的配置也得正确
在device/DEDOU/DEDOU_B01/system.prop中
添加配置;
#Set composition for USB
persist.sys.usb.config=mtp,adb

#Set read only default composition for USB
ro.sys.usb.default.config=mtp,adb
根据此处的配置,来实现识别usb端口的识别.

上述为控制,同时在编译版本的时候,需要打开adb开关,即编译eng或userdebug版本,这样才可以


你可能感兴趣的:(rom开发)