Loading core/java/android/debug/AdbManagerInternal.java +10 −0 Original line number Original line Diff line number Diff line Loading @@ -53,4 +53,14 @@ public abstract class AdbManagerInternal { * Returns the file that contains all of the ADB keys and their last used time. * Returns the file that contains all of the ADB keys and their last used time. */ */ public abstract File getAdbTempKeysFile(); public abstract File getAdbTempKeysFile(); /** * Starts adbd for a transport. */ public abstract void startAdbdForTransport(byte transportType); /** * Stops adbd for a transport. */ public abstract void stopAdbdForTransport(byte transportType); } } services/core/java/com/android/server/adb/AdbService.java +25 −0 Original line number Original line Diff line number Diff line Loading @@ -144,6 +144,18 @@ public class AdbService extends IAdbManager.Stub { public File getAdbTempKeysFile() { public File getAdbTempKeysFile() { return mDebuggingManager.getAdbTempKeysFile(); return mDebuggingManager.getAdbTempKeysFile(); } } @Override public void startAdbdForTransport(byte transportType) { FgThread.getHandler().sendMessage(obtainMessage( AdbService::setAdbdEnabledForTransport, AdbService.this, true, transportType)); } @Override public void stopAdbdForTransport(byte transportType) { FgThread.getHandler().sendMessage(obtainMessage( AdbService::setAdbdEnabledForTransport, AdbService.this, false, transportType)); } } } private void initAdbState() { private void initAdbState() { Loading Loading @@ -437,6 +449,19 @@ public class AdbService extends IAdbManager.Stub { } } } } private void setAdbdEnabledForTransport(boolean enable, byte transportType) { if (transportType == AdbTransportType.USB) { mIsAdbUsbEnabled = enable; } else if (transportType == AdbTransportType.WIFI) { mIsAdbWifiEnabled = enable; } if (enable) { startAdbd(); } else { stopAdbd(); } } private void setAdbEnabled(boolean enable, byte transportType) { private void setAdbEnabled(boolean enable, byte transportType) { if (DEBUG) { if (DEBUG) { Slog.d(TAG, "setAdbEnabled(" + enable + "), mIsAdbUsbEnabled=" + mIsAdbUsbEnabled Slog.d(TAG, "setAdbEnabled(" + enable + "), mIsAdbUsbEnabled=" + mIsAdbUsbEnabled Loading services/usb/java/com/android/server/usb/UsbDeviceManager.java +13 −1 Original line number Original line Diff line number Diff line Loading @@ -1917,7 +1917,19 @@ public class UsbDeviceManager implements ActivityTaskManagerInternal.ScreenObser return; return; } } try { try { // Adbd will be started by AdbService once Global.ADB_ENABLED is set. if ((config & UsbManager.FUNCTION_ADB) != 0) { /** * Start adbd if ADB function is included in the configuration. */ LocalServices.getService(AdbManagerInternal.class) .startAdbdForTransport(AdbTransportType.USB); } else { /** * Stop adbd otherwise */ LocalServices.getService(AdbManagerInternal.class) .stopAdbdForTransport(AdbTransportType.USB); } UsbGadgetCallback usbGadgetCallback = new UsbGadgetCallback(mCurrentRequest, UsbGadgetCallback usbGadgetCallback = new UsbGadgetCallback(mCurrentRequest, config, chargingFunctions); config, chargingFunctions); mGadgetProxy.setCurrentUsbFunctions(config, usbGadgetCallback, mGadgetProxy.setCurrentUsbFunctions(config, usbGadgetCallback, Loading Loading
core/java/android/debug/AdbManagerInternal.java +10 −0 Original line number Original line Diff line number Diff line Loading @@ -53,4 +53,14 @@ public abstract class AdbManagerInternal { * Returns the file that contains all of the ADB keys and their last used time. * Returns the file that contains all of the ADB keys and their last used time. */ */ public abstract File getAdbTempKeysFile(); public abstract File getAdbTempKeysFile(); /** * Starts adbd for a transport. */ public abstract void startAdbdForTransport(byte transportType); /** * Stops adbd for a transport. */ public abstract void stopAdbdForTransport(byte transportType); } }
services/core/java/com/android/server/adb/AdbService.java +25 −0 Original line number Original line Diff line number Diff line Loading @@ -144,6 +144,18 @@ public class AdbService extends IAdbManager.Stub { public File getAdbTempKeysFile() { public File getAdbTempKeysFile() { return mDebuggingManager.getAdbTempKeysFile(); return mDebuggingManager.getAdbTempKeysFile(); } } @Override public void startAdbdForTransport(byte transportType) { FgThread.getHandler().sendMessage(obtainMessage( AdbService::setAdbdEnabledForTransport, AdbService.this, true, transportType)); } @Override public void stopAdbdForTransport(byte transportType) { FgThread.getHandler().sendMessage(obtainMessage( AdbService::setAdbdEnabledForTransport, AdbService.this, false, transportType)); } } } private void initAdbState() { private void initAdbState() { Loading Loading @@ -437,6 +449,19 @@ public class AdbService extends IAdbManager.Stub { } } } } private void setAdbdEnabledForTransport(boolean enable, byte transportType) { if (transportType == AdbTransportType.USB) { mIsAdbUsbEnabled = enable; } else if (transportType == AdbTransportType.WIFI) { mIsAdbWifiEnabled = enable; } if (enable) { startAdbd(); } else { stopAdbd(); } } private void setAdbEnabled(boolean enable, byte transportType) { private void setAdbEnabled(boolean enable, byte transportType) { if (DEBUG) { if (DEBUG) { Slog.d(TAG, "setAdbEnabled(" + enable + "), mIsAdbUsbEnabled=" + mIsAdbUsbEnabled Slog.d(TAG, "setAdbEnabled(" + enable + "), mIsAdbUsbEnabled=" + mIsAdbUsbEnabled Loading
services/usb/java/com/android/server/usb/UsbDeviceManager.java +13 −1 Original line number Original line Diff line number Diff line Loading @@ -1917,7 +1917,19 @@ public class UsbDeviceManager implements ActivityTaskManagerInternal.ScreenObser return; return; } } try { try { // Adbd will be started by AdbService once Global.ADB_ENABLED is set. if ((config & UsbManager.FUNCTION_ADB) != 0) { /** * Start adbd if ADB function is included in the configuration. */ LocalServices.getService(AdbManagerInternal.class) .startAdbdForTransport(AdbTransportType.USB); } else { /** * Stop adbd otherwise */ LocalServices.getService(AdbManagerInternal.class) .stopAdbdForTransport(AdbTransportType.USB); } UsbGadgetCallback usbGadgetCallback = new UsbGadgetCallback(mCurrentRequest, UsbGadgetCallback usbGadgetCallback = new UsbGadgetCallback(mCurrentRequest, config, chargingFunctions); config, chargingFunctions); mGadgetProxy.setCurrentUsbFunctions(config, usbGadgetCallback, mGadgetProxy.setCurrentUsbFunctions(config, usbGadgetCallback, Loading