Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e37a0ac9 authored by Ganesh Olekar's avatar Ganesh Olekar
Browse files

DO NOT MERGE Fix auto-grant of AR runtime permission if device is upgrading from pre-Q

Test: Manually install app apks targeting Q and verifying that AR permission is not auto-granted
Test: atest ActivityRecognitionPermissionTest
Bug: 210065877
Change-Id: I90adf45a6611ab8bc953765c72af77a6a4f7aae8
(cherry picked from commit 84b1160c)
parent dc45b9fe
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -1100,16 +1100,19 @@ public class PermissionManagerService {
                        // case of OS update
                        if (mPackageManagerInt.getInstalledSdkVersion(pkg)
                                < Build.VERSION_CODES.Q) {
                            int numSplitPerms = PermissionManager.SPLIT_PERMISSIONS.size();
                            final List<PermissionManager.SplitPermissionInfo> permissionList =
                                    getSplitPermissions();
                            int numSplitPerms = permissionList.size();
                            for (int splitPermNum = 0; splitPermNum < numSplitPerms;
                                    splitPermNum++) {
                                PermissionManager.SplitPermissionInfo sp =
                                        PermissionManager.SPLIT_PERMISSIONS.get(splitPermNum);
                                        permissionList.get(splitPermNum);
                                String splitPermName = sp.getSplitPermission();
                                if (sp.getNewPermissions().contains(permName)
                                        && origPermissions.hasInstallPermission(splitPermName)) {
                                    upgradedActivityRecognitionPermission = splitPermName;
                                    newImplicitPermissions.add(permName);

                                    if (DEBUG_PERMISSIONS) {
                                        Slog.i(TAG, permName + " is newly added for "
                                                + pkg.packageName);