Package org.robolectric.shadows
Class ShadowUsbManager
java.lang.Object
org.robolectric.shadows.ShadowUsbManager
@Implements(value=android.hardware.usb.UsbManager.class,
looseSignatures=true)
public class ShadowUsbManager
extends Object
Robolectric implementation of
UsbManager
.-
Nested Class Summary
Modifier and TypeClassDescriptionstatic interface
Accessor interface forUsbManager
's internals.static interface
Accessor interface forUsbManager
's internals (Q+). -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addOrUpdateUsbDevice
(UsbDevice usbDevice, boolean hasPermission) Adds a USB device into available USB devices map with permission value.void
Adds a USB port with given ID to UsbManager.void
addPort
(String portId, int statusCurrentMode, int statusCurrentPowerRole, int statusCurrentDataRole, int statusSupportedRoleCombinations) Adds a USB port with given ID andUsbPortStatus
parameters to UsbManager for Q+.void
Remove all added ports from UsbManager.protected UsbAccessory[]
Returns a HashMap containing all USB devices currently attached.protected Object
getPorts()
protected Object
getPortStatus
(Object port) getPortStatus
(String portId) Returns theUsbPortStatus
corresponding to theUsbPort
with givenportId
if present; otherwise returnsnull
.void
grantPermission
(UsbAccessory accessory) Grants permission for the accessory.protected void
grantPermission
(UsbDevice device) protected void
grantPermission
(UsbDevice device, String packageName) protected boolean
hasPermission
(UsbAccessory accessory) Returns true if the caller has permission to access the accessory.protected boolean
hasPermission
(UsbDevice device) Returns true if the caller has permission to access the device.boolean
hasPermissionForPackage
(UsbAccessory accessory, String packageName) Returns true if the given package has permission to access the device.boolean
hasPermissionForPackage
(UsbDevice device, String packageName) Returns true if the given package has permission to access the device.protected ParcelFileDescriptor
openAccessory
(UsbAccessory accessory) Opens a file descriptor from a temporary file.protected UsbDeviceConnection
openDevice
(UsbDevice device) Opens a file descriptor from a temporary file.void
removeUsbDevice
(UsbDevice usbDevice) Removes a USB device from available USB devices map.void
revokePermission
(UsbAccessory accessory, String packageName) Revokes permission to a USB accessory granted to a package.void
revokePermission
(UsbDevice device, String packageName) Revokes permission to a USB device granted to a package.void
setAttachedUsbAccessory
(UsbAccessory usbAccessory) Sets the currently attached Usb accessory returned in #getAccessoryList.protected void
setPortRoles
(Object port, Object powerRole, Object dataRole)
-
Constructor Details
-
ShadowUsbManager
public ShadowUsbManager()
-
-
Method Details
-
hasPermission
Returns true if the caller has permission to access the device. -
hasPermissionForPackage
Returns true if the given package has permission to access the device. -
hasPermission
Returns true if the caller has permission to access the accessory. -
hasPermissionForPackage
Returns true if the given package has permission to access the device. -
grantPermission
-
grantPermission
@Implementation(minSdk=25) @HiddenApi protected void grantPermission(UsbDevice device, String packageName) -
grantPermission
Grants permission for the accessory. -
revokePermission
Revokes permission to a USB device granted to a package. This method does nothing if the package doesn't have permission to access the device. -
revokePermission
Revokes permission to a USB accessory granted to a package. This method does nothing if the package doesn't have permission to access the accessory. -
getDeviceList
Returns a HashMap containing all USB devices currently attached. USB device name is the key for the returned HashMap. The result will be empty if no devices are attached, or if USB host mode is inactive or unsupported. -
getAccessoryList
-
setAttachedUsbAccessory
Sets the currently attached Usb accessory returned in #getAccessoryList. -
addOrUpdateUsbDevice
Adds a USB device into available USB devices map with permission value. If the USB device already exists, updates the USB device with new permission value. -
removeUsbDevice
Removes a USB device from available USB devices map. -
getPorts
-
clearPorts
public void clearPorts()Remove all added ports from UsbManager. -
addPort
Adds a USB port with given ID to UsbManager. -
addPort
public void addPort(String portId, int statusCurrentMode, int statusCurrentPowerRole, int statusCurrentDataRole, int statusSupportedRoleCombinations) Adds a USB port with given ID andUsbPortStatus
parameters to UsbManager for Q+. -
getPortStatus
Returns theUsbPortStatus
corresponding to theUsbPort
with givenportId
if present; otherwise returnsnull
. -
getPortStatus
-
setPortRoles
@Implementation(minSdk=23) @HiddenApi protected void setPortRoles(Object port, Object powerRole, Object dataRole) -
openDevice
Opens a file descriptor from a temporary file. -
openAccessory
Opens a file descriptor from a temporary file.
-