diff options
| author | 2022-09-29 20:39:30 +0000 | |
|---|---|---|
| committer | 2022-09-29 20:39:30 +0000 | |
| commit | 677d18848ecbfe6301ab1661de695ac3737fa14d (patch) | |
| tree | c6c9d86ea512a45a0e27c3ef3d0baf4953a58740 | |
| parent | 67457fc6c1dbce6cfc8d2b4181bb2d58f16ec955 (diff) | |
| parent | e95e91730e5c72a2a99b7bcc339d45712b54354f (diff) | |
Merge "Add updateLockTaskPackages API to ActivityTaskManager"
| -rw-r--r-- | core/api/test-current.txt | 1 | ||||
| -rw-r--r-- | core/java/android/app/ActivityTaskManager.java | 10 | ||||
| -rw-r--r-- | core/java/android/app/IActivityTaskManager.aidl | 1 | ||||
| -rw-r--r-- | packages/Shell/AndroidManifest.xml | 3 |
4 files changed, 15 insertions, 0 deletions
diff --git a/core/api/test-current.txt b/core/api/test-current.txt index e08cef92fc6c..fa55178778b9 100644 --- a/core/api/test-current.txt +++ b/core/api/test-current.txt @@ -197,6 +197,7 @@ package android.app { method @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_TASKS) public void stopSystemLockTaskMode(); method public static boolean supportsMultiWindow(android.content.Context); method public static boolean supportsSplitScreenMultiWindow(android.content.Context); + method @RequiresPermission("android.permission.UPDATE_LOCK_TASK_PACKAGES") public void updateLockTaskPackages(@NonNull android.content.Context, @NonNull String[]); field public static final int DEFAULT_MINIMAL_SPLIT_SCREEN_DISPLAY_SIZE_DP = 440; // 0x1b8 field public static final int INVALID_STACK_ID = -1; // 0xffffffff } diff --git a/core/java/android/app/ActivityTaskManager.java b/core/java/android/app/ActivityTaskManager.java index f17d5b7c0190..7cfca979ed0f 100644 --- a/core/java/android/app/ActivityTaskManager.java +++ b/core/java/android/app/ActivityTaskManager.java @@ -496,6 +496,16 @@ public class ActivityTaskManager { } } + /** Update the list of packages allowed in lock task mode. */ + @RequiresPermission(android.Manifest.permission.UPDATE_LOCK_TASK_PACKAGES) + public void updateLockTaskPackages(@NonNull Context context, @NonNull String[] packages) { + try { + getService().updateLockTaskPackages(context.getUserId(), packages); + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + } + /** * Information you can retrieve about a root task in the system. * @hide diff --git a/core/java/android/app/IActivityTaskManager.aidl b/core/java/android/app/IActivityTaskManager.aidl index 6576a1a5d3c2..7c357a62d5b7 100644 --- a/core/java/android/app/IActivityTaskManager.aidl +++ b/core/java/android/app/IActivityTaskManager.aidl @@ -173,6 +173,7 @@ interface IActivityTaskManager { Rect getTaskBounds(int taskId); void cancelRecentsAnimation(boolean restoreHomeRootTaskPosition); + @JavaPassthrough(annotation="@android.annotation.RequiresPermission(android.Manifest.permission.UPDATE_LOCK_TASK_PACKAGES)") void updateLockTaskPackages(int userId, in String[] packages); boolean isInLockTaskMode(); int getLockTaskModeState(); diff --git a/packages/Shell/AndroidManifest.xml b/packages/Shell/AndroidManifest.xml index 6c17036b3f5f..6fe80875c65b 100644 --- a/packages/Shell/AndroidManifest.xml +++ b/packages/Shell/AndroidManifest.xml @@ -705,6 +705,9 @@ <!-- Permission required for CTS test - CtsKeystoreTestCases --> <uses-permission android:name="android.permission.REQUEST_UNIQUE_ID_ATTESTATION" /> + <!-- Permission required for CTS test - CtsWindowManagerDeviceTestCases--> + <uses-permission android:name="android.permission.UPDATE_LOCK_TASK_PACKAGES" /> + <application android:label="@string/app_label" android:theme="@android:style/Theme.DeviceDefault.DayNight" android:defaultToDeviceProtectedStorage="true" |