From 0050a51961000057f7858bb2b8892892aaad3232 Mon Sep 17 00:00:00 2001 From: Vladimir Komsiyski Date: Wed, 5 Oct 2022 13:31:28 +0200 Subject: [PATCH] Open the visibility of VirtualDeviceManager and VirtualDeviceManager#getVirtualDevices. Bug: 239152561 Test: n/a Change-Id: Ib504a3bad36072730a527b139de945874ec4741a --- core/api/current.txt | 7 +++++++ core/api/system-current.txt | 3 --- .../virtual/VirtualDeviceManager.java | 21 ++++++++++++++++--- core/java/android/content/Context.java | 4 ++-- 4 files changed, 27 insertions(+), 8 deletions(-) diff --git a/core/api/current.txt b/core/api/current.txt index 0c98ec3466e29..8138f6abea870 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -9079,6 +9079,12 @@ package android.companion.virtual { field @NonNull public static final android.os.Parcelable.Creator CREATOR; } + public final class VirtualDeviceManager { + method @NonNull public java.util.List getVirtualDevices(); + field public static final int DEFAULT_DEVICE_ID = 0; // 0x0 + field public static final int INVALID_DEVICE_ID = -1; // 0xffffffff + } + } package android.content { @@ -9903,6 +9909,7 @@ package android.content { field public static final String USER_SERVICE = "user"; field public static final String VIBRATOR_MANAGER_SERVICE = "vibrator_manager"; field @Deprecated public static final String VIBRATOR_SERVICE = "vibrator"; + field public static final String VIRTUAL_DEVICE_SERVICE = "virtualdevice"; field public static final String VPN_MANAGEMENT_SERVICE = "vpn_management"; field @UiContext public static final String WALLPAPER_SERVICE = "wallpaper"; field public static final String WIFI_AWARE_SERVICE = "wifiaware"; diff --git a/core/api/system-current.txt b/core/api/system-current.txt index aa138d7e7bdb1..37ba3a5fd36d7 100644 --- a/core/api/system-current.txt +++ b/core/api/system-current.txt @@ -2789,9 +2789,6 @@ package android.companion.virtual { public final class VirtualDeviceManager { method @NonNull @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) public android.companion.virtual.VirtualDeviceManager.VirtualDevice createVirtualDevice(int, @NonNull android.companion.virtual.VirtualDeviceParams); - method @NonNull public java.util.List getVirtualDevices(); - field public static final int DEFAULT_DEVICE_ID = 0; // 0x0 - field public static final int INVALID_DEVICE_ID = -1; // 0xffffffff field public static final int LAUNCH_FAILURE_NO_ACTIVITY = 2; // 0x2 field public static final int LAUNCH_FAILURE_PENDING_INTENT_CANCELED = 1; // 0x1 field public static final int LAUNCH_SUCCESS = 0; // 0x0 diff --git a/core/java/android/companion/virtual/VirtualDeviceManager.java b/core/java/android/companion/virtual/VirtualDeviceManager.java index 7ef92e3edb0d1..0bb86fbf00f89 100644 --- a/core/java/android/companion/virtual/VirtualDeviceManager.java +++ b/core/java/android/companion/virtual/VirtualDeviceManager.java @@ -63,10 +63,7 @@ import java.util.function.IntConsumer; /** * System level service for managing virtual devices. - * - * @hide */ -@SystemApi @SystemService(Context.VIRTUAL_DEVICE_SERVICE) public final class VirtualDeviceManager { @@ -105,19 +102,28 @@ public final class VirtualDeviceManager { /** * Status for {@link VirtualDevice#launchPendingIntent}, indicating that the launch was * successful. + * + * @hide */ + @SystemApi public static final int LAUNCH_SUCCESS = 0; /** * Status for {@link VirtualDevice#launchPendingIntent}, indicating that the launch failed * because the pending intent was canceled. + * + * @hide */ + @SystemApi public static final int LAUNCH_FAILURE_PENDING_INTENT_CANCELED = 1; /** * Status for {@link VirtualDevice#launchPendingIntent}, indicating that the launch failed * because no activity starts were detected as a result of calling the pending intent. + * + * @hide */ + @SystemApi public static final int LAUNCH_FAILURE_NO_ACTIVITY = 2; private final IVirtualDeviceManager mService; @@ -143,7 +149,10 @@ public final class VirtualDeviceManager { * @param params The parameters for creating virtual devices. See {@link VirtualDeviceParams} * for the available options. * @return The created virtual device. + * + * @hide */ + @SystemApi @RequiresPermission(android.Manifest.permission.CREATE_VIRTUAL_DEVICE) @NonNull public VirtualDevice createVirtualDevice( @@ -178,7 +187,10 @@ public final class VirtualDeviceManager { * to another device, and inject input events that are received from the remote device. * * TODO(b/204081582): Consider using a builder pattern for the input APIs. + * + * @hide */ + @SystemApi public static class VirtualDevice implements AutoCloseable { private final Context mContext; @@ -556,7 +568,10 @@ public final class VirtualDeviceManager { /** * Listener for activity changes in this virtual device. + * + * @hide */ + @SystemApi public interface ActivityListener { /** diff --git a/core/java/android/content/Context.java b/core/java/android/content/Context.java index cb5a99fcc811e..e28df09e61d78 100644 --- a/core/java/android/content/Context.java +++ b/core/java/android/content/Context.java @@ -3919,7 +3919,7 @@ public abstract class Context { //@hide: INCIDENT_COMPANION_SERVICE, //@hide: STATS_COMPANION_SERVICE, COMPANION_DEVICE_SERVICE, - //@hide: VIRTUAL_DEVICE_SERVICE, + VIRTUAL_DEVICE_SERVICE, CROSS_PROFILE_APPS_SERVICE, //@hide: SYSTEM_UPDATE_SERVICE, //@hide: TIME_DETECTOR_SERVICE, @@ -5441,8 +5441,8 @@ public abstract class Context { * * @see #getSystemService(String) * @see android.companion.virtual.VirtualDeviceManager - * @hide */ + @SuppressLint("ServiceName") public static final String VIRTUAL_DEVICE_SERVICE = "virtualdevice"; /**