Add a convenience method for creating a device Context

Bug: 261073567
Test: atest VirtualDeviceManagerBasicTest
Change-Id: I7b10a9c3e3aa83b133b5782b1594d93994185c6e
This commit is contained in:
Antony Sargent
2022-11-30 10:46:22 -08:00
parent 9cae44ac78
commit bffa47fa0e
2 changed files with 13 additions and 0 deletions

View File

@@ -2956,6 +2956,7 @@ package android.companion.virtual {
public static class VirtualDeviceManager.VirtualDevice implements java.lang.AutoCloseable {
method public void addActivityListener(@NonNull java.util.concurrent.Executor, @NonNull android.companion.virtual.VirtualDeviceManager.ActivityListener);
method @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public void close();
method @NonNull public android.content.Context createContext();
method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.companion.virtual.audio.VirtualAudioDevice createVirtualAudioDevice(@NonNull android.hardware.display.VirtualDisplay, @Nullable java.util.concurrent.Executor, @Nullable android.companion.virtual.audio.VirtualAudioDevice.AudioConfigurationChangeCallback);
method @Nullable public android.hardware.display.VirtualDisplay createVirtualDisplay(@IntRange(from=1) int, @IntRange(from=1) int, @IntRange(from=1) int, @Nullable android.view.Surface, int, @Nullable java.util.concurrent.Executor, @Nullable android.hardware.display.VirtualDisplay.Callback);
method @Nullable public android.hardware.display.VirtualDisplay createVirtualDisplay(@IntRange(from=1) int, @IntRange(from=1) int, @IntRange(from=1) int, @NonNull java.util.List<java.lang.String>, @Nullable android.view.Surface, int, @Nullable java.util.concurrent.Executor, @Nullable android.hardware.display.VirtualDisplay.Callback);

View File

@@ -309,6 +309,18 @@ public final class VirtualDeviceManager {
}
}
/**
* @return A new Context bound to this device. This is a convenience method equivalent to
* calling {@link Context#createDeviceContext(int)} with the device id of this device.
*/
public @NonNull Context createContext() {
try {
return mContext.createDeviceContext(mVirtualDevice.getDeviceId());
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
}
}
/**
* Returns this device's sensor with the given type and name, if any.
*