diff options
| author | Jonathan Scott <scottjonathan@google.com> | 2020-01-29 16:36:09 +0000 |
|---|---|---|
| committer | Alex Kershaw <alexkershaw@google.com> | 2020-02-03 10:51:33 +0000 |
| commit | 38f9ab54ca597a82977a6ed5fa35b8302c838bec (patch) | |
| tree | 408205c296107aaf13cf78b4f442a8653129f109 /core/java | |
| parent | 2b1f4315b0e6cde0a0c1dd42e5caf2ecd2d2441a (diff) | |
Add vendor_cross_profile_apps.xml and hidden API to read them.
Test: atest com.android.server.devicepolicy.DevicePolicyManagerTest;
Change-Id: Ie84e7d28ddc9c1f46d33cb4a543b04615b3b26e7
Diffstat (limited to 'core/java')
| -rw-r--r-- | core/java/android/app/admin/DevicePolicyManager.java | 30 | ||||
| -rw-r--r-- | core/java/android/app/admin/IDevicePolicyManager.aidl | 1 |
2 files changed, 27 insertions, 4 deletions
diff --git a/core/java/android/app/admin/DevicePolicyManager.java b/core/java/android/app/admin/DevicePolicyManager.java index f71d78b40242..2a4148f02217 100644 --- a/core/java/android/app/admin/DevicePolicyManager.java +++ b/core/java/android/app/admin/DevicePolicyManager.java @@ -11584,12 +11584,14 @@ public class DevicePolicyManager { * #setCrossProfilePackages(ComponentName, Set)}.</li> * <li>The default package names set by the OEM that are allowed to request user consent for * cross-profile communication without being explicitly enabled by the admin, via - * {@link com.android.internal.R.array#cross_profile_apps}</li> + * {@link com.android.internal.R.array#cross_profile_apps} and + * {@link com.android.internal.R.array#vendor_cross_profile_apps}.</li> * </ul> * * @return the combined set of whitelisted package names set via - * {@link #setCrossProfilePackages(ComponentName, Set)} and - * {@link com.android.internal.R.array#cross_profile_apps} + * {@link #setCrossProfilePackages(ComponentName, Set)}, + * {@link com.android.internal.R.array#cross_profile_apps}, + * and {@link com.android.internal.R.array#vendor_cross_profile_apps}. * * @hide */ @@ -11599,7 +11601,7 @@ public class DevicePolicyManager { permission.INTERACT_ACROSS_PROFILES }) public @NonNull Set<String> getAllCrossProfilePackages() { - throwIfParentInstance("getDefaultCrossProfilePackages"); + throwIfParentInstance("getAllCrossProfilePackages"); if (mService != null) { try { return new ArraySet<>(mService.getAllCrossProfilePackages()); @@ -11611,6 +11613,26 @@ public class DevicePolicyManager { } /** + * Returns the default package names set by the OEM that are allowed to request user consent for + * cross-profile communication without being explicitly enabled by the admin, via + * {@link com.android.internal.R.array#cross_profile_apps} and + * {@link com.android.internal.R.array#vendor_cross_profile_apps}. + * + * @hide + */ + public @NonNull Set<String> getDefaultCrossProfilePackages() { + throwIfParentInstance("getDefaultCrossProfilePackages"); + if (mService != null) { + try { + return new ArraySet<>(mService.getDefaultCrossProfilePackages()); + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + } + return Collections.emptySet(); + } + + /** * Returns whether the device is being used as a managed kiosk. These requirements are as * follows: * <ul> diff --git a/core/java/android/app/admin/IDevicePolicyManager.aidl b/core/java/android/app/admin/IDevicePolicyManager.aidl index 7fd0ae4a1a00..d2672eb3e2b2 100644 --- a/core/java/android/app/admin/IDevicePolicyManager.aidl +++ b/core/java/android/app/admin/IDevicePolicyManager.aidl @@ -457,6 +457,7 @@ interface IDevicePolicyManager { List<String> getCrossProfilePackages(in ComponentName admin); List<String> getAllCrossProfilePackages(); + List<String> getDefaultCrossProfilePackages(); boolean isManagedKiosk(); boolean isUnattendedManagedKiosk(); |
