diff options
| author | 2020-02-19 03:04:09 +0000 | |
|---|---|---|
| committer | 2020-02-19 03:04:09 +0000 | |
| commit | 2f9800a47d43f383e8207575efc331bd25bf7a27 (patch) | |
| tree | ebf8d4a99ab3064e7fb8db93691004b4ade89cb1 | |
| parent | c5cb13899de291a4ee627b2c37aa72d6949e5013 (diff) | |
| parent | 77dc3e9ff2061463c2bdd368e00ee1b66f8afd89 (diff) | |
Merge "USB: [API feedback] Add bitmask @IntDef annonation to setCurrentFunctions"
| -rwxr-xr-x | api/system-current.txt | 6 | ||||
| -rw-r--r-- | core/java/android/hardware/usb/UsbManager.java | 23 |
2 files changed, 28 insertions, 1 deletions
diff --git a/api/system-current.txt b/api/system-current.txt index 5463cbab4e20..971ea08651b4 100755 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -3350,8 +3350,14 @@ package android.hardware.usb { method @RequiresPermission(android.Manifest.permission.MANAGE_USB) public void setCurrentFunctions(long); field @RequiresPermission(android.Manifest.permission.MANAGE_USB) public static final String ACTION_USB_PORT_CHANGED = "android.hardware.usb.action.USB_PORT_CHANGED"; field public static final String ACTION_USB_STATE = "android.hardware.usb.action.USB_STATE"; + field public static final long FUNCTION_ACCESSORY = 2L; // 0x2L + field public static final long FUNCTION_ADB = 1L; // 0x1L + field public static final long FUNCTION_AUDIO_SOURCE = 64L; // 0x40L + field public static final long FUNCTION_MIDI = 8L; // 0x8L + field public static final long FUNCTION_MTP = 4L; // 0x4L field public static final long FUNCTION_NCM = 1024L; // 0x400L field public static final long FUNCTION_NONE = 0L; // 0x0L + field public static final long FUNCTION_PTP = 16L; // 0x10L field public static final long FUNCTION_RNDIS = 32L; // 0x20L field public static final String USB_CONFIGURED = "configured"; field public static final String USB_CONNECTED = "connected"; diff --git a/core/java/android/hardware/usb/UsbManager.java b/core/java/android/hardware/usb/UsbManager.java index b0d0b4c16873..f540bfb2e0fc 100644 --- a/core/java/android/hardware/usb/UsbManager.java +++ b/core/java/android/hardware/usb/UsbManager.java @@ -18,6 +18,7 @@ package android.hardware.usb; import android.Manifest; +import android.annotation.LongDef; import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.RequiresFeature; @@ -337,12 +338,14 @@ public class UsbManager { * Code for the mtp usb function. Passed as a mask into {@link #setCurrentFunctions(long)} * {@hide} */ + @SystemApi public static final long FUNCTION_MTP = GadgetFunction.MTP; /** * Code for the ptp usb function. Passed as a mask into {@link #setCurrentFunctions(long)} * {@hide} */ + @SystemApi public static final long FUNCTION_PTP = GadgetFunction.PTP; /** @@ -356,24 +359,28 @@ public class UsbManager { * Code for the midi usb function. Passed as a mask into {@link #setCurrentFunctions(long)} * {@hide} */ + @SystemApi public static final long FUNCTION_MIDI = GadgetFunction.MIDI; /** * Code for the accessory usb function. * {@hide} */ + @SystemApi public static final long FUNCTION_ACCESSORY = GadgetFunction.ACCESSORY; /** * Code for the audio source usb function. * {@hide} */ + @SystemApi public static final long FUNCTION_AUDIO_SOURCE = GadgetFunction.AUDIO_SOURCE; /** * Code for the adb usb function. * {@hide} */ + @SystemApi public static final long FUNCTION_ADB = GadgetFunction.ADB; /** @@ -399,6 +406,20 @@ public class UsbManager { FUNCTION_NAME_TO_CODE.put(UsbManager.USB_FUNCTION_NCM, FUNCTION_NCM); } + /** @hide */ + @LongDef(flag = true, prefix = { "FUNCTION_" }, value = { + FUNCTION_NONE, + FUNCTION_MTP, + FUNCTION_PTP, + FUNCTION_RNDIS, + FUNCTION_MIDI, + FUNCTION_ACCESSORY, + FUNCTION_AUDIO_SOURCE, + FUNCTION_ADB, + FUNCTION_NCM, + }) + public @interface UsbFunctionMode {} + private final Context mContext; private final IUsbManager mService; @@ -721,7 +742,7 @@ public class UsbManager { */ @SystemApi @RequiresPermission(Manifest.permission.MANAGE_USB) - public void setCurrentFunctions(long functions) { + public void setCurrentFunctions(@UsbFunctionMode long functions) { try { mService.setCurrentFunctions(functions); } catch (RemoteException e) { |