Loading apex/jobscheduler/service/java/com/android/server/usage/AppStandbyController.java +7 −1 Original line number Diff line number Diff line Loading @@ -110,6 +110,7 @@ import com.android.internal.util.ArrayUtils; import com.android.internal.util.ConcurrentUtils; import com.android.internal.util.IndentingPrintWriter; import com.android.server.LocalServices; import com.android.server.pm.parsing.pkg.AndroidPackage; import com.android.server.usage.AppIdleHistory.AppUsageHistory; import java.io.File; Loading Loading @@ -1862,10 +1863,15 @@ public class AppStandbyController implements AppStandbyInternal { public List<UserHandle> getValidCrossProfileTargets(String pkg, int userId) { final int uid = mPackageManagerInternal.getPackageUidInternal(pkg, 0, userId); final AndroidPackage aPkg = mPackageManagerInternal.getPackage(uid); if (uid < 0 || !mPackageManagerInternal.getPackage(uid).isCrossProfile() || aPkg == null || !aPkg.isCrossProfile() || !mCrossProfileAppsInternal .verifyUidHasInteractAcrossProfilePermission(pkg, uid)) { if (uid >= 0 && aPkg == null) { Slog.wtf(TAG, "Null package retrieved for UID " + uid); } return Collections.emptyList(); } return mCrossProfileAppsInternal.getTargetUserProfiles(pkg, userId); Loading api/test-current.txt +7 −0 Original line number Diff line number Diff line Loading @@ -580,6 +580,7 @@ package android.app.admin { method public java.util.List<java.lang.String> getOwnerInstalledCaCerts(@NonNull android.os.UserHandle); method public boolean isCurrentInputMethodSetByOwner(); method public boolean isDeviceManaged(); method public boolean isFactoryResetProtectionPolicySupported(); field public static final String ACCOUNT_FEATURE_DEVICE_OR_PROFILE_OWNER_ALLOWED = "android.account.DEVICE_OR_PROFILE_OWNER_ALLOWED"; field public static final String ACCOUNT_FEATURE_DEVICE_OR_PROFILE_OWNER_DISALLOWED = "android.account.DEVICE_OR_PROFILE_OWNER_DISALLOWED"; field public static final String ACTION_DATA_SHARING_RESTRICTION_APPLIED = "android.app.action.DATA_SHARING_RESTRICTION_APPLIED"; Loading Loading @@ -2888,8 +2889,10 @@ package android.permission { public final class PermissionControllerManager { method @RequiresPermission(anyOf={"android.permission.GRANT_RUNTIME_PERMISSIONS", "android.permission.RESTORE_RUNTIME_PERMISSIONS"}) public void applyStagedRuntimePermissionBackup(@NonNull String, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>); method @RequiresPermission("android.permission.GET_RUNTIME_PERMISSIONS") public void countPermissionApps(@NonNull java.util.List<java.lang.String>, int, @NonNull android.permission.PermissionControllerManager.OnCountPermissionAppsResultCallback, @Nullable android.os.Handler); method @RequiresPermission("android.permission.GET_RUNTIME_PERMISSIONS") public void getAppPermissions(@NonNull String, @NonNull android.permission.PermissionControllerManager.OnGetAppPermissionResultCallback, @Nullable android.os.Handler); method @RequiresPermission("android.permission.GET_RUNTIME_PERMISSIONS") public void getRuntimePermissionBackup(@NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<byte[]>); method @RequiresPermission("android.permission.REVOKE_RUNTIME_PERMISSIONS") public void revokeRuntimePermission(@NonNull String, @NonNull String); method @RequiresPermission("android.permission.REVOKE_RUNTIME_PERMISSIONS") public void revokeRuntimePermissions(@NonNull java.util.Map<java.lang.String,java.util.List<java.lang.String>>, boolean, int, @NonNull java.util.concurrent.Executor, @NonNull android.permission.PermissionControllerManager.OnRevokeRuntimePermissionsCallback); method @RequiresPermission(anyOf={"android.permission.GRANT_RUNTIME_PERMISSIONS", "android.permission.RESTORE_RUNTIME_PERMISSIONS"}) public void stageAndApplyRuntimePermissionsBackup(@NonNull byte[], @NonNull android.os.UserHandle); field public static final int COUNT_ONLY_WHEN_GRANTED = 1; // 0x1 Loading @@ -2898,6 +2901,10 @@ package android.permission { field public static final int REASON_MALWARE = 1; // 0x1 } public static interface PermissionControllerManager.OnCountPermissionAppsResultCallback { method public void onCountPermissionApps(int); } public static interface PermissionControllerManager.OnGetAppPermissionResultCallback { method public void onGetAppPermissions(@NonNull java.util.List<android.permission.RuntimePermissionPresentationInfo>); } Loading core/java/android/accessibilityservice/AccessibilityService.java +12 −0 Original line number Diff line number Diff line Loading @@ -501,6 +501,18 @@ public abstract class AccessibilityService extends Service { */ public static final int GLOBAL_ACTION_KEYCODE_HEADSETHOOK = 10; /** * Action to trigger the Accessibility Button * @hide */ public static final int GLOBAL_ACTION_ACCESSIBILITY_BUTTON = 11; /** * Action to bring up the Accessibility Button's chooser menu * @hide */ public static final int GLOBAL_ACTION_ACCESSIBILITY_BUTTON_CHOOSER = 12; private static final String LOG_TAG = "AccessibilityService"; /** Loading core/java/android/app/Activity.java +6 −2 Original line number Diff line number Diff line Loading @@ -6549,8 +6549,12 @@ public class Activity extends ContextThemeWrapper * {@link #RESULT_CANCELED} if the activity explicitly returned that, * didn't return any result, or crashed during its operation. * * <p>You will receive this call immediately before onResume() when your * activity is re-starting. * <p>An activity can never receive a result in the resumed state. You can count on * {@link #onResume} being called after this method, though not necessarily immediately after. * If the activity was resumed, it will be paused and the result will be delivered, followed * by {@link #onResume}. If the activity wasn't in the resumed state, then the result will * be delivered, with {@link #onResume} called sometime later when the activity becomes active * again. * * <p>This method is never invoked if your activity sets * {@link android.R.styleable#AndroidManifestActivity_noHistory noHistory} to Loading core/java/android/app/ITaskStackListener.aidl +2 −1 Original line number Diff line number Diff line Loading @@ -43,9 +43,10 @@ oneway interface ITaskStackListener { * @param homeVisible whether or not the home task is visible * @param clearedTask whether or not the launch activity also cleared the task as a part of * starting * @param wasVisible whether the activity was visible before the restart attempt */ void onActivityRestartAttempt(in ActivityManager.RunningTaskInfo task, boolean homeTaskVisible, boolean clearedTask); boolean clearedTask, boolean wasVisible); /** * Called when we launched an activity that we forced to be resizable. Loading Loading
apex/jobscheduler/service/java/com/android/server/usage/AppStandbyController.java +7 −1 Original line number Diff line number Diff line Loading @@ -110,6 +110,7 @@ import com.android.internal.util.ArrayUtils; import com.android.internal.util.ConcurrentUtils; import com.android.internal.util.IndentingPrintWriter; import com.android.server.LocalServices; import com.android.server.pm.parsing.pkg.AndroidPackage; import com.android.server.usage.AppIdleHistory.AppUsageHistory; import java.io.File; Loading Loading @@ -1862,10 +1863,15 @@ public class AppStandbyController implements AppStandbyInternal { public List<UserHandle> getValidCrossProfileTargets(String pkg, int userId) { final int uid = mPackageManagerInternal.getPackageUidInternal(pkg, 0, userId); final AndroidPackage aPkg = mPackageManagerInternal.getPackage(uid); if (uid < 0 || !mPackageManagerInternal.getPackage(uid).isCrossProfile() || aPkg == null || !aPkg.isCrossProfile() || !mCrossProfileAppsInternal .verifyUidHasInteractAcrossProfilePermission(pkg, uid)) { if (uid >= 0 && aPkg == null) { Slog.wtf(TAG, "Null package retrieved for UID " + uid); } return Collections.emptyList(); } return mCrossProfileAppsInternal.getTargetUserProfiles(pkg, userId); Loading
api/test-current.txt +7 −0 Original line number Diff line number Diff line Loading @@ -580,6 +580,7 @@ package android.app.admin { method public java.util.List<java.lang.String> getOwnerInstalledCaCerts(@NonNull android.os.UserHandle); method public boolean isCurrentInputMethodSetByOwner(); method public boolean isDeviceManaged(); method public boolean isFactoryResetProtectionPolicySupported(); field public static final String ACCOUNT_FEATURE_DEVICE_OR_PROFILE_OWNER_ALLOWED = "android.account.DEVICE_OR_PROFILE_OWNER_ALLOWED"; field public static final String ACCOUNT_FEATURE_DEVICE_OR_PROFILE_OWNER_DISALLOWED = "android.account.DEVICE_OR_PROFILE_OWNER_DISALLOWED"; field public static final String ACTION_DATA_SHARING_RESTRICTION_APPLIED = "android.app.action.DATA_SHARING_RESTRICTION_APPLIED"; Loading Loading @@ -2888,8 +2889,10 @@ package android.permission { public final class PermissionControllerManager { method @RequiresPermission(anyOf={"android.permission.GRANT_RUNTIME_PERMISSIONS", "android.permission.RESTORE_RUNTIME_PERMISSIONS"}) public void applyStagedRuntimePermissionBackup(@NonNull String, @NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<java.lang.Boolean>); method @RequiresPermission("android.permission.GET_RUNTIME_PERMISSIONS") public void countPermissionApps(@NonNull java.util.List<java.lang.String>, int, @NonNull android.permission.PermissionControllerManager.OnCountPermissionAppsResultCallback, @Nullable android.os.Handler); method @RequiresPermission("android.permission.GET_RUNTIME_PERMISSIONS") public void getAppPermissions(@NonNull String, @NonNull android.permission.PermissionControllerManager.OnGetAppPermissionResultCallback, @Nullable android.os.Handler); method @RequiresPermission("android.permission.GET_RUNTIME_PERMISSIONS") public void getRuntimePermissionBackup(@NonNull android.os.UserHandle, @NonNull java.util.concurrent.Executor, @NonNull java.util.function.Consumer<byte[]>); method @RequiresPermission("android.permission.REVOKE_RUNTIME_PERMISSIONS") public void revokeRuntimePermission(@NonNull String, @NonNull String); method @RequiresPermission("android.permission.REVOKE_RUNTIME_PERMISSIONS") public void revokeRuntimePermissions(@NonNull java.util.Map<java.lang.String,java.util.List<java.lang.String>>, boolean, int, @NonNull java.util.concurrent.Executor, @NonNull android.permission.PermissionControllerManager.OnRevokeRuntimePermissionsCallback); method @RequiresPermission(anyOf={"android.permission.GRANT_RUNTIME_PERMISSIONS", "android.permission.RESTORE_RUNTIME_PERMISSIONS"}) public void stageAndApplyRuntimePermissionsBackup(@NonNull byte[], @NonNull android.os.UserHandle); field public static final int COUNT_ONLY_WHEN_GRANTED = 1; // 0x1 Loading @@ -2898,6 +2901,10 @@ package android.permission { field public static final int REASON_MALWARE = 1; // 0x1 } public static interface PermissionControllerManager.OnCountPermissionAppsResultCallback { method public void onCountPermissionApps(int); } public static interface PermissionControllerManager.OnGetAppPermissionResultCallback { method public void onGetAppPermissions(@NonNull java.util.List<android.permission.RuntimePermissionPresentationInfo>); } Loading
core/java/android/accessibilityservice/AccessibilityService.java +12 −0 Original line number Diff line number Diff line Loading @@ -501,6 +501,18 @@ public abstract class AccessibilityService extends Service { */ public static final int GLOBAL_ACTION_KEYCODE_HEADSETHOOK = 10; /** * Action to trigger the Accessibility Button * @hide */ public static final int GLOBAL_ACTION_ACCESSIBILITY_BUTTON = 11; /** * Action to bring up the Accessibility Button's chooser menu * @hide */ public static final int GLOBAL_ACTION_ACCESSIBILITY_BUTTON_CHOOSER = 12; private static final String LOG_TAG = "AccessibilityService"; /** Loading
core/java/android/app/Activity.java +6 −2 Original line number Diff line number Diff line Loading @@ -6549,8 +6549,12 @@ public class Activity extends ContextThemeWrapper * {@link #RESULT_CANCELED} if the activity explicitly returned that, * didn't return any result, or crashed during its operation. * * <p>You will receive this call immediately before onResume() when your * activity is re-starting. * <p>An activity can never receive a result in the resumed state. You can count on * {@link #onResume} being called after this method, though not necessarily immediately after. * If the activity was resumed, it will be paused and the result will be delivered, followed * by {@link #onResume}. If the activity wasn't in the resumed state, then the result will * be delivered, with {@link #onResume} called sometime later when the activity becomes active * again. * * <p>This method is never invoked if your activity sets * {@link android.R.styleable#AndroidManifestActivity_noHistory noHistory} to Loading
core/java/android/app/ITaskStackListener.aidl +2 −1 Original line number Diff line number Diff line Loading @@ -43,9 +43,10 @@ oneway interface ITaskStackListener { * @param homeVisible whether or not the home task is visible * @param clearedTask whether or not the launch activity also cleared the task as a part of * starting * @param wasVisible whether the activity was visible before the restart attempt */ void onActivityRestartAttempt(in ActivityManager.RunningTaskInfo task, boolean homeTaskVisible, boolean clearedTask); boolean clearedTask, boolean wasVisible); /** * Called when we launched an activity that we forced to be resizable. Loading