diff options
Diffstat (limited to 'services/usb/java')
| -rw-r--r-- | services/usb/java/com/android/server/usb/UsbDeviceManager.java | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/services/usb/java/com/android/server/usb/UsbDeviceManager.java b/services/usb/java/com/android/server/usb/UsbDeviceManager.java index 6dfd08570b18..7de2010121c8 100644 --- a/services/usb/java/com/android/server/usb/UsbDeviceManager.java +++ b/services/usb/java/com/android/server/usb/UsbDeviceManager.java @@ -1240,10 +1240,13 @@ public class UsbDeviceManager { private String getDefaultFunctions() { String func = SystemProperties.get(getPersistProp(true), UsbManager.USB_FUNCTION_NONE); - if (UsbManager.USB_FUNCTION_NONE.equals(func)) { - func = UsbManager.USB_FUNCTION_MTP; + // if ADB is enabled, reset functions to ADB + // else enable MTP as usual. + if (UsbManager.containsFunction(func, UsbManager.USB_FUNCTION_ADB)) { + return UsbManager.USB_FUNCTION_ADB; + } else { + return UsbManager.USB_FUNCTION_MTP; } - return func; } public void dump(IndentingPrintWriter pw) { |