diff options
2 files changed, 21 insertions, 0 deletions
diff --git a/services/companion/java/com/android/server/companion/virtual/VirtualDeviceManagerService.java b/services/companion/java/com/android/server/companion/virtual/VirtualDeviceManagerService.java index 139bbae26289..93b4de856463 100644 --- a/services/companion/java/com/android/server/companion/virtual/VirtualDeviceManagerService.java +++ b/services/companion/java/com/android/server/companion/virtual/VirtualDeviceManagerService.java @@ -891,6 +891,11 @@ public class VirtualDeviceManagerService extends SystemService { } @Override + public VirtualDevice getVirtualDevice(int deviceId) { + return mImpl.getVirtualDevice(deviceId); + } + + @Override public long getDimDurationMillisForDeviceId(int deviceId) { VirtualDeviceImpl virtualDevice = getVirtualDeviceForId(deviceId); return virtualDevice == null ? -1 : virtualDevice.getDimDurationMillis(); diff --git a/services/core/java/com/android/server/companion/virtual/VirtualDeviceManagerInternal.java b/services/core/java/com/android/server/companion/virtual/VirtualDeviceManagerInternal.java index d412277d2605..f5284a3ed589 100644 --- a/services/core/java/com/android/server/companion/virtual/VirtualDeviceManagerInternal.java +++ b/services/core/java/com/android/server/companion/virtual/VirtualDeviceManagerInternal.java @@ -211,4 +211,20 @@ public abstract class VirtualDeviceManagerInternal { */ public abstract @NonNull VirtualDeviceManager.VirtualDevice createVirtualDevice( @NonNull VirtualDeviceParams params); + + /** + * Returns the details of the virtual device with the given ID, if any. + * + * <p>The returned object is a read-only representation of the virtual device that expose its + * properties.</p> + * + * <p>Note that if the virtual device is closed and becomes invalid, the returned object will + * not be updated and may contain stale values. Use a {@link VirtualDeviceListener} for real + * time updates of the availability of virtual devices.</p> + * + * @return the virtual device with the requested ID, or {@code null} if no such device exists or + * it has already been closed. + */ + @Nullable + public abstract VirtualDevice getVirtualDevice(int deviceId); } |